From 2fe5f0037ded57d0a22aa2de7d140be8120d79ef Mon Sep 17 00:00:00 2001 From: Travis Plunk Date: Wed, 11 May 2022 15:23:58 -0700 Subject: [PATCH] Add a finalize template which causes jobs with issues to fail (#17314) * Add a finalize template * add finalize to prep * update display name * Add condition * revert me: add fake issue * fix display name * Revert "revert me: add fake issue" This reverts commit 5b10f299ce8f2c0f5cc11a8484b7b3b396d4a473. --- tools/releaseBuild/azureDevOps/releaseBuild.yml | 2 ++ .../azureDevOps/templates/checkAzureContainer.yml | 3 ++- .../azureDevOps/templates/compliance/compliance.yml | 2 ++ tools/releaseBuild/azureDevOps/templates/json.yml | 2 ++ tools/releaseBuild/azureDevOps/templates/linux.yml | 4 ++++ .../releaseBuild/azureDevOps/templates/mac-file-signing.yml | 2 ++ .../releaseBuild/azureDevOps/templates/mac-package-build.yml | 2 ++ .../azureDevOps/templates/mac-package-signing.yml | 2 ++ tools/releaseBuild/azureDevOps/templates/mac.yml | 2 ++ tools/releaseBuild/azureDevOps/templates/step/finalize.yml | 5 +++++ tools/releaseBuild/azureDevOps/templates/testartifacts.yml | 2 ++ .../azureDevOps/templates/windows-hosted-build.yml | 2 ++ .../azureDevOps/templates/windows-package-signing.yml | 2 ++ .../releaseBuild/azureDevOps/templates/windows-packaging.yml | 2 ++ 14 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/releaseBuild.yml b/tools/releaseBuild/azureDevOps/releaseBuild.yml index 916f90c7a5..4ae32ad430 100644 --- a/tools/releaseBuild/azureDevOps/releaseBuild.yml +++ b/tools/releaseBuild/azureDevOps/releaseBuild.yml @@ -227,3 +227,5 @@ stages: Get-Content "$(Build.StagingDirectory)\release.json" Write-Host "##vso[artifact.upload containerfolder=metadata;artifactname=metadata]$(Build.StagingDirectory)\release.json" displayName: Create and upload release.json file to build artifact + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/checkAzureContainer.yml b/tools/releaseBuild/azureDevOps/templates/checkAzureContainer.yml index 49082849e9..af6451004e 100644 --- a/tools/releaseBuild/azureDevOps/templates/checkAzureContainer.yml +++ b/tools/releaseBuild/azureDevOps/templates/checkAzureContainer.yml @@ -22,6 +22,7 @@ jobs: UseJson: no - task: AzurePowerShell@4 + displayName: Check if blob exists and delete if specified inputs: azureSubscription: '$(AzureFileCopySubscription)' scriptType: inlineScript @@ -47,4 +48,4 @@ jobs: } } - + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/compliance/compliance.yml b/tools/releaseBuild/azureDevOps/templates/compliance/compliance.yml index e81bdcf370..eb0400bc3f 100644 --- a/tools/releaseBuild/azureDevOps/templates/compliance/compliance.yml +++ b/tools/releaseBuild/azureDevOps/templates/compliance/compliance.yml @@ -88,3 +88,5 @@ jobs: inputs: sourceScanPath: '$(Build.SourcesDirectory)\tools' snapshotForceEnabled: true + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/json.yml b/tools/releaseBuild/azureDevOps/templates/json.yml index 714978022a..1d6c10b8f3 100644 --- a/tools/releaseBuild/azureDevOps/templates/json.yml +++ b/tools/releaseBuild/azureDevOps/templates/json.yml @@ -53,3 +53,5 @@ jobs: inputs: sourceScanPath: '$(Build.SourcesDirectory)\tools' snapshotForceEnabled: true + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/linux.yml b/tools/releaseBuild/azureDevOps/templates/linux.yml index 6dd44eb219..92224a74d0 100644 --- a/tools/releaseBuild/azureDevOps/templates/linux.yml +++ b/tools/releaseBuild/azureDevOps/templates/linux.yml @@ -153,6 +153,8 @@ jobs: condition: and(succeeded(), ne(variables['SkipBuild'], 'true')) workingDirectory: $(PowerShellRoot) + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml + - job: upload_${{ parameters.buildName }} displayName: ${{ parameters.uploadDisplayName }} ${{ parameters.buildName }} dependsOn: build_${{ parameters.buildName }} @@ -335,3 +337,5 @@ jobs: parameters: artifactPath: '$(Build.StagingDirectory)\signedPackages\release' condition: and(and(succeeded(), eq(variables['SHOULD_SIGN'], 'true')),eq(variables['buildName'], 'RPM')) + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/mac-file-signing.yml b/tools/releaseBuild/azureDevOps/templates/mac-file-signing.yml index a5c5a0811e..5af4295994 100644 --- a/tools/releaseBuild/azureDevOps/templates/mac-file-signing.yml +++ b/tools/releaseBuild/azureDevOps/templates/mac-file-signing.yml @@ -118,3 +118,5 @@ jobs: inputs: sourceScanPath: '$(repoRoot)\tools' snapshotForceEnabled: true + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/mac-package-build.yml b/tools/releaseBuild/azureDevOps/templates/mac-package-build.yml index 69c683156d..e61ea99004 100644 --- a/tools/releaseBuild/azureDevOps/templates/mac-package-build.yml +++ b/tools/releaseBuild/azureDevOps/templates/mac-package-build.yml @@ -133,3 +133,5 @@ jobs: inputs: sourceScanPath: '$(PowerShellRoot)/tools' snapshotForceEnabled: true + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/mac-package-signing.yml b/tools/releaseBuild/azureDevOps/templates/mac-package-signing.yml index e41d0609d4..c0fea01097 100644 --- a/tools/releaseBuild/azureDevOps/templates/mac-package-signing.yml +++ b/tools/releaseBuild/azureDevOps/templates/mac-package-signing.yml @@ -130,3 +130,5 @@ jobs: inputs: sourceScanPath: '$(repoRoot)/tools' snapshotForceEnabled: true + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/mac.yml b/tools/releaseBuild/azureDevOps/templates/mac.yml index 9634c3bdb5..776382c952 100644 --- a/tools/releaseBuild/azureDevOps/templates/mac.yml +++ b/tools/releaseBuild/azureDevOps/templates/mac.yml @@ -59,3 +59,5 @@ jobs: inputs: sourceScanPath: '$(Build.SourcesDirectory)/tools' snapshotForceEnabled: true + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/step/finalize.yml b/tools/releaseBuild/azureDevOps/templates/step/finalize.yml new file mode 100644 index 0000000000..72a677fec9 --- /dev/null +++ b/tools/releaseBuild/azureDevOps/templates/step/finalize.yml @@ -0,0 +1,5 @@ +steps: + - pwsh: | + throw "Jobs with an Issue will not work for release. Please fix the issue and try again." + displayName: Check for SucceededWithIssues + condition: eq(variables['Agent.JobStatus'],'SucceededWithIssues') diff --git a/tools/releaseBuild/azureDevOps/templates/testartifacts.yml b/tools/releaseBuild/azureDevOps/templates/testartifacts.yml index 38d9ee0d15..99122b59de 100644 --- a/tools/releaseBuild/azureDevOps/templates/testartifacts.yml +++ b/tools/releaseBuild/azureDevOps/templates/testartifacts.yml @@ -57,3 +57,5 @@ jobs: BuildTestPackage -runtime linux-musl-x64 displayName: Build test package and upload + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/windows-hosted-build.yml b/tools/releaseBuild/azureDevOps/templates/windows-hosted-build.yml index 16554ae7d4..1201edf98b 100644 --- a/tools/releaseBuild/azureDevOps/templates/windows-hosted-build.yml +++ b/tools/releaseBuild/azureDevOps/templates/windows-hosted-build.yml @@ -78,3 +78,5 @@ jobs: inputs: sourceScanPath: '$(PowerShellRoot)\tools' snapshotForceEnabled: true + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/windows-package-signing.yml b/tools/releaseBuild/azureDevOps/templates/windows-package-signing.yml index 66bf7af7b3..c2e3f4d1c1 100644 --- a/tools/releaseBuild/azureDevOps/templates/windows-package-signing.yml +++ b/tools/releaseBuild/azureDevOps/templates/windows-package-signing.yml @@ -134,3 +134,5 @@ jobs: inputs: sourceScanPath: '$(repoRoot)\tools' snapshotForceEnabled: true + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml diff --git a/tools/releaseBuild/azureDevOps/templates/windows-packaging.yml b/tools/releaseBuild/azureDevOps/templates/windows-packaging.yml index 956eb19d85..7cd0f5e33a 100644 --- a/tools/releaseBuild/azureDevOps/templates/windows-packaging.yml +++ b/tools/releaseBuild/azureDevOps/templates/windows-packaging.yml @@ -353,3 +353,5 @@ jobs: } displayName: Clean up local Clone condition: always() + + - template: /tools/releaseBuild/azureDevOps/templates/step/finalize.yml