Skip to content

Commit 9eb841f

Browse files
authored
Merge pull request #751 from jonsequitur/fix-ymls
add post-build.yml
2 parents e3132ca + 8ab1876 commit 9eb841f

File tree

1 file changed

+223
-0
lines changed

1 file changed

+223
-0
lines changed
Lines changed: 223 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,223 @@
1+
parameters:
2+
enableSourceLinkValidation: false
3+
enableSigningValidation: true
4+
enableSymbolValidation: false
5+
enableNugetValidation: true
6+
publishInstallersAndChecksums: false
7+
SDLValidationParameters:
8+
enable: false
9+
continueOnError: false
10+
params: ''
11+
artifactNames: ''
12+
13+
# These parameters let the user customize the call to sdk-task.ps1 for publishing
14+
# symbols & general artifacts as well as for signing validation
15+
symbolPublishingAdditionalParameters: ''
16+
artifactsPublishingAdditionalParameters: ''
17+
signingValidationAdditionalParameters: ''
18+
19+
# Which stages should finish execution before post-build stages start
20+
validateDependsOn:
21+
- build
22+
publishDependsOn:
23+
- Validate
24+
25+
stages:
26+
- stage: Validate
27+
dependsOn: ${{ parameters.validateDependsOn }}
28+
displayName: Validate
29+
jobs:
30+
- ${{ if eq(parameters.enableNugetValidation, 'true') }}:
31+
- job:
32+
displayName: NuGet Validation
33+
pool:
34+
vmImage: 'windows-2019'
35+
steps:
36+
- task: DownloadBuildArtifacts@0
37+
displayName: Download Package Artifacts
38+
inputs:
39+
buildType: current
40+
artifactName: PackageArtifacts
41+
42+
- task: PowerShell@2
43+
displayName: Validate
44+
inputs:
45+
filePath: $(Build.SourcesDirectory)/eng/common/post-build/nuget-validation.ps1
46+
arguments: -PackagesPath $(Build.ArtifactStagingDirectory)/PackageArtifacts/
47+
-ToolDestinationPath $(Agent.BuildDirectory)/Extract/
48+
49+
- ${{ if eq(parameters.enableSigningValidation, 'true') }}:
50+
- job:
51+
displayName: Signing Validation
52+
variables:
53+
- template: common-variables.yml
54+
pool:
55+
vmImage: 'windows-2019'
56+
steps:
57+
- task: DownloadBuildArtifacts@0
58+
displayName: Download Package Artifacts
59+
inputs:
60+
buildType: current
61+
artifactName: PackageArtifacts
62+
63+
# This is necessary whenever we want to publish/restore to an AzDO private feed
64+
# Since sdk-task.ps1 tries to restore packages we need to do this authentication here
65+
# otherwise it'll complain about accessing a private feed.
66+
- task: NuGetAuthenticate@0
67+
displayName: 'Authenticate to AzDO Feeds'
68+
69+
- task: PowerShell@2
70+
displayName: Enable cross-org publishing
71+
inputs:
72+
filePath: eng\common\enable-cross-org-publishing.ps1
73+
arguments: -token $(dn-bot-dnceng-artifact-feeds-rw)
74+
75+
- task: PowerShell@2
76+
displayName: Validate
77+
inputs:
78+
filePath: eng\common\sdk-task.ps1
79+
arguments: -task SigningValidation -restore -msbuildEngine dotnet
80+
/p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts'
81+
/p:SignCheckExclusionsFile='$(Build.SourcesDirectory)/eng/SignCheckExclusionsFile.txt'
82+
${{ parameters.signingValidationAdditionalParameters }}
83+
84+
- template: ../steps/publish-logs.yml
85+
parameters:
86+
StageLabel: 'Validation'
87+
JobLabel: 'Signing'
88+
89+
- ${{ if eq(parameters.enableSourceLinkValidation, 'true') }}:
90+
- job:
91+
displayName: SourceLink Validation
92+
variables:
93+
- template: common-variables.yml
94+
pool:
95+
vmImage: 'windows-2019'
96+
steps:
97+
- task: DownloadBuildArtifacts@0
98+
displayName: Download Blob Artifacts
99+
inputs:
100+
buildType: current
101+
artifactName: BlobArtifacts
102+
103+
- task: PowerShell@2
104+
displayName: Validate
105+
inputs:
106+
filePath: $(Build.SourcesDirectory)/eng/common/post-build/sourcelink-validation.ps1
107+
arguments: -InputPath $(Build.ArtifactStagingDirectory)/BlobArtifacts/
108+
-ExtractPath $(Agent.BuildDirectory)/Extract/
109+
-GHRepoName $(Build.Repository.Name)
110+
-GHCommit $(Build.SourceVersion)
111+
-SourcelinkCliVersion $(SourceLinkCLIVersion)
112+
continueOnError: true
113+
114+
- ${{ if eq(parameters.SDLValidationParameters.enable, 'true') }}:
115+
- template: /eng/common/templates/job/execute-sdl.yml
116+
parameters:
117+
additionalParameters: ${{ parameters.SDLValidationParameters.params }}
118+
continueOnError: ${{ parameters.SDLValidationParameters.continueOnError }}
119+
artifactNames: ${{ parameters.SDLValidationParameters.artifactNames }}
120+
121+
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
122+
parameters:
123+
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
124+
dependsOn: ${{ parameters.publishDependsOn }}
125+
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
126+
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
127+
stageName: 'NetCore_Dev5_Publish'
128+
channelName: '.NET Core 5 Dev'
129+
channelId: 131
130+
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5-transport/nuget/v3/index.json'
131+
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5/nuget/v3/index.json'
132+
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5-symbols/nuget/v3/index.json'
133+
134+
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
135+
parameters:
136+
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
137+
dependsOn: ${{ parameters.publishDependsOn }}
138+
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
139+
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
140+
stageName: 'Net_Eng_Latest_Publish'
141+
channelName: '.NET Eng - Latest'
142+
channelId: 2
143+
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json'
144+
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json'
145+
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng-symbols/nuget/v3/index.json'
146+
147+
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
148+
parameters:
149+
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
150+
dependsOn: ${{ parameters.publishDependsOn }}
151+
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
152+
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
153+
stageName: 'Net_Eng_Validation_Publish'
154+
channelName: '.NET Eng - Validation'
155+
channelId: 9
156+
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json'
157+
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json'
158+
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng-symbols/nuget/v3/index.json'
159+
160+
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
161+
parameters:
162+
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
163+
dependsOn: ${{ parameters.publishDependsOn }}
164+
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
165+
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
166+
stageName: 'General_Testing_Publish'
167+
channelName: 'General Testing'
168+
channelId: 529
169+
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/general-testing/nuget/v3/index.json'
170+
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/general-testing/nuget/v3/index.json'
171+
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/general-testing-symbols/nuget/v3/index.json'
172+
173+
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
174+
parameters:
175+
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
176+
dependsOn: ${{ parameters.publishDependsOn }}
177+
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
178+
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
179+
stageName: 'NETCore_Tooling_Dev_Publishing'
180+
channelName: '.NET Core Tooling Dev'
181+
channelId: 548
182+
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
183+
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
184+
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools-symbols/nuget/v3/index.json'
185+
186+
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
187+
parameters:
188+
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
189+
dependsOn: ${{ parameters.publishDependsOn }}
190+
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
191+
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
192+
stageName: 'NETCore_Tooling_Release_Publishing'
193+
channelName: '.NET Core Tooling Release'
194+
channelId: 549
195+
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
196+
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json'
197+
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools-symbols/nuget/v3/index.json'
198+
199+
- template: \eng\common\templates\post-build\channels\generic-internal-channel.yml
200+
parameters:
201+
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
202+
dependsOn: ${{ parameters.publishDependsOn }}
203+
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
204+
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
205+
stageName: 'NET_Internal_Tooling_Publishing'
206+
channelName: '.NET Internal Tooling'
207+
channelId: 551
208+
transportFeed: 'https://pkgs.dev.azure.com/dnceng/internal/_packaging/dotnet-tools-internal/nuget/v3/index.json'
209+
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/internal/_packaging/dotnet-tools-internal/nuget/v3/index.json'
210+
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/internal/_packaging/dotnet-tools-internal-symbols/nuget/v3/index.json'
211+
212+
- template: \eng\common\templates\post-build\channels\generic-public-channel.yml
213+
parameters:
214+
artifactsPublishingAdditionalParameters: ${{ parameters.artifactsPublishingAdditionalParameters }}
215+
dependsOn: ${{ parameters.publishDependsOn }}
216+
publishInstallersAndChecksums: ${{ parameters.publishInstallersAndChecksums }}
217+
symbolPublishingAdditionalParameters: ${{ parameters.symbolPublishingAdditionalParameters }}
218+
stageName: 'NETCore_Experimental_Publishing'
219+
channelName: '.NET Core Experimental'
220+
channelId: 562
221+
transportFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-experimental/nuget/v3/index.json'
222+
shippingFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-experimental/nuget/v3/index.json'
223+
symbolsFeed: 'https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-experimental-symbols/nuget/v3/index.json'

0 commit comments

Comments
 (0)