e6b75088c94749d69213a1eeb5ab9a3c4ebab652
[platform/upstream/coreclr.git] / eng / common / templates / post-build / post-build.yml
1 parameters:
2   enableSourceLinkValidation: true
3   enableSigningValidation: true
4   enableSymbolValidation: true
5   enableNugetValidation: true
6   SDLValidationParameters:
7     enable: false
8     params: ''
9
10   # These parameters let the user customize the call to sdk-task.ps1 for publishing
11   # symbols & general artifacts as well as for signing validation
12   symbolPublishingAdditionalParameters: ''
13   artifactsPublishingAdditionalParameters: ''
14   signingValidationAdditionalParameters: ''
15
16   # Which stages should finish execution before post-build stages start
17   dependsOn: [build]
18
19 stages:
20 - stage: validate
21   dependsOn: ${{ parameters.dependsOn }}
22   displayName: Validate
23   jobs:
24   - ${{ if eq(parameters.enableNugetValidation, 'true') }}:
25     - job:
26       displayName: NuGet Validation
27       pool:
28         vmImage: 'windows-2019'
29       steps:
30         - task: DownloadBuildArtifacts@0
31           displayName: Download Package Artifacts
32           inputs:
33             buildType: current
34             artifactName: PackageArtifacts
35
36         - task: PowerShell@2
37           displayName: Validate
38           inputs:
39             filePath: $(Build.SourcesDirectory)/eng/common/post-build/nuget-validation.ps1
40             arguments: -PackagesPath $(Build.ArtifactStagingDirectory)/PackageArtifacts/ 
41               -ToolDestinationPath $(Agent.BuildDirectory)/Extract/ 
42
43   - ${{ if eq(parameters.enableSigningValidation, 'true') }}:
44     - job:
45       displayName: Signing Validation
46       pool:
47         vmImage: 'windows-2019'
48       steps:
49         - task: DownloadBuildArtifacts@0
50           displayName: Download Package Artifacts
51           inputs:
52             buildType: current
53             artifactName: PackageArtifacts
54
55         - task: PowerShell@2
56           displayName: Validate
57           inputs:
58             filePath: eng\common\sdk-task.ps1
59             arguments: -task SigningValidation -restore -msbuildEngine dotnet
60               /p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts'
61               /p:SignCheckExclusionsFile='$(Build.SourcesDirectory)/eng/SignCheckExclusionsFile.txt'
62               /p:Configuration=Release 
63               ${{ parameters.signingValidationAdditionalParameters }}
64
65   - ${{ if eq(parameters.enableSourceLinkValidation, 'true') }}:
66     - job:
67       displayName: SourceLink Validation
68       variables:
69         - template: common-variables.yml
70       pool:
71         vmImage: 'windows-2019'
72       steps:
73         - task: DownloadBuildArtifacts@0
74           displayName: Download Blob Artifacts
75           inputs:
76             buildType: current
77             artifactName: BlobArtifacts
78
79         - task: PowerShell@2
80           displayName: Validate
81           inputs:
82             filePath: $(Build.SourcesDirectory)/eng/common/post-build/sourcelink-validation.ps1
83             arguments: -InputPath $(Build.ArtifactStagingDirectory)/BlobArtifacts/ 
84               -ExtractPath $(Agent.BuildDirectory)/Extract/ 
85               -GHRepoName $(Build.Repository.Name) 
86               -GHCommit $(Build.SourceVersion)
87               -SourcelinkCliVersion $(SourceLinkCLIVersion)
88
89   - ${{ if eq(parameters.SDLValidationParameters.enable, 'true') }}:
90     - template: /eng/common/templates/job/execute-sdl.yml
91       parameters:
92         additionalParameters: ${{ parameters.SDLValidationParameters.params }}
93
94 - template: \eng\common\templates\post-build\channels\netcore-dev-5.yml
95   parameters:
96     enableSymbolValidation: ${{ parameters.enableSymbolValidation }}
97     symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
98     artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
99
100 - template: \eng\common\templates\post-build\channels\public-dev-release.yml
101   parameters:
102     enableSymbolValidation: ${{ parameters.enableSymbolValidation }}
103     symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
104     artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
105
106 - template: \eng\common\templates\post-build\channels\netcore-tools-latest.yml
107   parameters:
108     enableSymbolValidation: ${{ parameters.enableSymbolValidation }}
109     symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
110     artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
111
112 - template: \eng\common\templates\post-build\channels\public-validation-release.yml
113   parameters:
114     artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
115
116 - template: \eng\common\templates\post-build\channels\public-release.yml
117   parameters:
118     symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
119     artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
120
121 - template: \eng\common\templates\post-build\channels\internal-servicing.yml
122   parameters:
123     symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
124     artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}