@@ -50,7 +50,7 @@ variables:
50
50
-name :ob_outputDirectory
51
51
value :' $(Build.ArtifactStagingDirectory)/ONEBRANCH_ARTIFACT'
52
52
-name :WindowsContainerImage
53
- value :' onebranch.azurecr.io/windows/ltsc2019 /vse2022:latest'
53
+ value :' onebranch.azurecr.io/windows/ltsc2022 /vse2022:latest'
54
54
-name :LinuxContainerImage
55
55
value :mcr.microsoft.com/onebranch/cbl-mariner/build:2.0
56
56
-name :ReleaseTagVar
@@ -79,12 +79,12 @@ resources:
79
79
extends :
80
80
template :v2/OneBranch.Official.CrossPlat.yml@templates
81
81
parameters :
82
- # using Monitor as copy blob is being blocked by the network
82
+ release :
83
+ category :NonAzure
83
84
featureFlags :
84
- LinuxHostVersion :
85
- Network :Monitor
86
85
WindowsHostVersion :
87
- Network :Monitor
86
+ Version :2022
87
+ Network :Netlock
88
88
cloudvault :
89
89
enabled :false
90
90
globalSdl :
@@ -110,13 +110,23 @@ extends:
110
110
tsaOptionsFile :.config\tsaoptions.json
111
111
112
112
stages :
113
+ -stage :DownloadPackages
114
+ displayName :' Download Packages'
115
+ dependsOn :[]
116
+ jobs :
117
+ -template :/.pipelines/templates/release-download-packages.yml@self
118
+
113
119
-stage :msixbundle
114
120
displayName :' Create MSIX Bundle'
121
+ dependsOn :[]
122
+ variables :
123
+ ob_release_environment :Test
115
124
jobs :
116
125
-template :/.pipelines/templates/release-create-msix.yml@self
117
126
118
127
-stage :validateSdk
119
128
displayName :' Validate SDK'
129
+ dependsOn :[]
120
130
jobs :
121
131
-template :/.pipelines/templates/release-validate-sdk.yml@self
122
132
parameters :
@@ -141,6 +151,7 @@ extends:
141
151
142
152
-stage :gbltool
143
153
displayName :' Validate Global tools'
154
+ dependsOn :[]
144
155
jobs :
145
156
-template :/.pipelines/templates/release-validate-globaltools.yml@self
146
157
parameters :
@@ -158,6 +169,7 @@ extends:
158
169
159
170
-stage :fxdpackages
160
171
displayName :' Validate FXD Packages'
172
+ dependsOn :[]
161
173
jobs :
162
174
-template :/.pipelines/templates/release-validate-fxdpackages.yml@self
163
175
parameters :
@@ -194,6 +206,7 @@ extends:
194
206
195
207
-stage :validatePackages
196
208
displayName :' Validate Packages'
209
+ dependsOn :[]
197
210
jobs :
198
211
-template :/.pipelines/templates/release-validate-packagenames.yml@self
199
212
@@ -262,38 +275,65 @@ extends:
262
275
Update and merge the changelog for the release.
263
276
This step is required for creating GitHub draft release.
264
277
278
+ -stage :PublishGitHubRelease
279
+ displayName :Publish GitHub Release
280
+ dependsOn :
281
+ -DownloadPackages
282
+ -UpdateChangeLog
283
+ variables :
284
+ ob_release_environment :Production
285
+ jobs :
286
+ -template :/.pipelines/templates/release-githubtasks.yml@self
287
+
288
+ -stage :PushGitTagAndMakeDraftPublic
289
+ displayName :Push Git Tag and Make Draft Public
290
+ dependsOn :PublishGitHubRelease
291
+ jobs :
292
+ -template :/.pipelines/templates/approvalJob.yml@self
293
+ parameters :
294
+ displayName :Push Git Tag
295
+ jobName :PushGitTag
296
+ instructions :|
297
+ Push the git tag to upstream
298
+
299
+ -template :/.pipelines/templates/approvalJob.yml@self
300
+ parameters :
301
+ displayName :Make Draft Public
302
+ dependsOnJob :PushGitTag
303
+ jobName :DraftPublic
304
+ instructions :|
305
+ Make the GitHub Release Draft Public
306
+
265
307
-stage :BlobPublic
266
308
displayName :Make Blob Public
267
- dependsOn :UpdateChangeLog
309
+ dependsOn :
310
+ -UpdateChangeLog
311
+ -PushGitTagAndMakeDraftPublic
268
312
jobs :
269
313
-template :/.pipelines/templates/release-MakeBlobPublic.yml@self
270
314
parameters :
271
- SkipPSInfraInstallers :${{ parameters.SkipPSInfraInstallers }}
272
-
273
- -stage :PublishGitHubRelease
274
- displayName :Publish GitHub Release
275
- dependsOn :BlobPublic
276
- jobs :
277
- -template :/.pipelines/templates/release-githubtasks.yml@self
278
-
315
+ SkipPSInfraInstallers :${{ parameters.SkipPSInfraInstallers }}
316
+
279
317
-stage :PublishNuGet
280
318
displayName :Publish NuGet
281
- dependsOn :PublishGitHubRelease
319
+ dependsOn :PushGitTagAndMakeDraftPublic
320
+ variables :
321
+ ob_release_environment :Production
282
322
jobs :
283
323
-template :/.pipelines/templates/release-publish-nuget.yml@self
284
324
parameters :
285
325
skipPublish :true
286
326
287
327
-stage :PublishPMC
288
328
displayName :Publish PMC
289
- dependsOn :PublishGitHubRelease
329
+ dependsOn :PushGitTagAndMakeDraftPublic
290
330
jobs :
291
331
-template :/.pipelines/templates/release-publish-pmc.yml@self
292
332
parameters :
293
333
skipPublish :${{ parameters.SkipPMCPublish }}
294
334
295
335
-stage :ReleaseDocker
296
- dependsOn :PublishGitHubRelease
336
+ dependsOn :PushGitTagAndMakeDraftPublic
297
337
displayName :' Docker Release'
298
338
jobs :
299
339
-template :/.pipelines/templates/approvalJob.yml@self
@@ -312,7 +352,7 @@ extends:
312
352
Kickoff docker release
313
353
314
354
-stage :UpdateDotnetDocker
315
- dependsOn :PublishGitHubRelease
355
+ dependsOn :PushGitTagAndMakeDraftPublic
316
356
displayName :Update DotNet SDK Docker images
317
357
jobs :
318
358
-template :/.pipelines/templates/approvalJob.yml@self
@@ -327,7 +367,7 @@ extends:
327
367
4. create PR targeting nightly branch
328
368
329
369
-stage :UpdateWinGet
330
- dependsOn :PublishGitHubRelease
370
+ dependsOn :PushGitTagAndMakeDraftPublic
331
371
displayName :Add manifest entry to winget
332
372
jobs :
333
373
-template :/.pipelines/templates/approvalJob.yml@self
@@ -338,7 +378,7 @@ extends:
338
378
This is typically done by the community 1-2 days after the release.
339
379
340
380
-stage :PublishMsix
341
- dependsOn :PublishGitHubRelease
381
+ dependsOn :PushGitTagAndMakeDraftPublic
342
382
displayName :Publish MSIX to store
343
383
jobs :
344
384
-template :/.pipelines/templates/approvalJob.yml@self
@@ -349,7 +389,7 @@ extends:
349
389
Ask Steve to release MSIX bundle package to Store
350
390
351
391
-stage :PublishVPack
352
- dependsOn :PublishGitHubRelease
392
+ dependsOn :PushGitTagAndMakeDraftPublic
353
393
displayName :Release vPack
354
394
jobs :
355
395
-template :/.pipelines/templates/approvalJob.yml@self
@@ -367,20 +407,22 @@ extends:
367
407
# - template: templates/release-UpdateDepsJson.yml
368
408
369
409
-stage :UploadBuildInfoJson
370
- dependsOn :PublishGitHubRelease
410
+ dependsOn :PushGitTagAndMakeDraftPublic
371
411
displayName :Upload BuildInfo.json
372
412
jobs :
373
413
-template :/.pipelines/templates/release-upload-buildinfo.yml@self
374
414
375
415
-stage :ReleaseSymbols
376
- dependsOn :PublishGitHubRelease
416
+ dependsOn :PushGitTagAndMakeDraftPublic
377
417
displayName :Release Symbols
378
418
jobs :
379
419
-template :/.pipelines/templates/release-symbols.yml@self
380
420
381
421
-stage :ChangesToMaster
382
422
displayName :Ensure changes are in GH master
383
- dependsOn :['PublishNuGet', 'PublishPMC']
423
+ dependsOn :
424
+ -PublishNuGet
425
+ -PublishPMC
384
426
jobs :
385
427
-template :/.pipelines/templates/approvalJob.yml@self
386
428
parameters :
@@ -391,7 +433,7 @@ extends:
391
433
392
434
-stage :ReleaseSnap
393
435
displayName :Release Snap
394
- dependsOn :' ChangesToMaster'
436
+ dependsOn :ChangesToMaster
395
437
jobs :
396
438
-template :/.pipelines/templates/approvalJob.yml@self
397
439
parameters :
@@ -402,7 +444,7 @@ extends:
402
444
403
445
-stage :ReleaseToMU
404
446
displayName :Release to MU
405
- dependsOn :['PublishNuGet', 'PublishPMC', 'ChangesToMaster']
447
+ dependsOn :PushGitTagAndMakeDraftPublic # This only needs the blob to be available
406
448
jobs :
407
449
-template :/.pipelines/templates/approvalJob.yml@self
408
450
parameters :
@@ -412,7 +454,10 @@ extends:
412
454
413
455
-stage :ReleaseClose
414
456
displayName :Finish Release
415
- dependsOn :['ReleaseToMU', 'ReleaseSymbols', 'ReleaseSnap']
457
+ dependsOn :
458
+ -ReleaseToMU
459
+ -ReleaseSymbols
460
+ -ReleaseSnap
416
461
jobs :
417
462
-template :/.pipelines/templates/approvalJob.yml@self
418
463
parameters :