1
1
variables :
2
2
buildNumber : $[ counter('constant', 13000) ]
3
3
isReleaseBranch : $[contains(variables['Build.SourceBranch'], 'release/')]
4
- ${{ if contains(variables['Build.SourceBranch'], 'release/inproc6/') }} :
5
- minorVersionPrefix : " 6"
6
- ${{ elseif contains(variables['Build.SourceBranch'], 'release/inproc8/') }} :
7
- minorVersionPrefix : " 8"
8
- ${{ else }} :
9
- minorVersionPrefix : " "
10
4
DOTNET_NOLOGO : 1
11
5
DOTNET_SKIP_FIRST_TIME_EXPERIENCE : 1
12
6
DOTNET_CLI_TELEMETRY_OPTOUT : 1
@@ -46,11 +40,16 @@ jobs:
46
40
name : Initialize
47
41
inputs :
48
42
filePath : ' $(Build.Repository.LocalPath)\build\initialize-pipeline.ps1'
49
- arguments : -minorVersionPrefix "$(minorVersionPrefix)"
50
43
showWarnings : true
51
44
pwsh : true
52
45
53
46
- job : BuildArtifacts
47
+ strategy :
48
+ matrix :
49
+ net6 :
50
+ minorVersionPrefix : " 6"
51
+ net8 :
52
+ minorVersionPrefix : " 8"
54
53
dependsOn : InitializePipeline
55
54
condition : and(succeeded(), or(ne(variables['Build.Reason'], 'PullRequest'), eq(dependencies.InitializePipeline.outputs['Initialize.BuildArtifacts'], true)))
56
55
variables :
68
67
steps :
69
68
- template : build/install-dotnet.yml
70
69
- task : PowerShell@2
71
- displayName : " Build artifacts"
70
+ displayName : " Build artifacts $(minorVersionPrefix) "
72
71
inputs :
73
72
filePath : ' $(Build.Repository.LocalPath)\build\build-extensions.ps1'
74
73
arguments : ' -buildNumber "$(buildNumber)" -suffix "$(suffix)" -minorVersionPrefix "$(minorVersionPrefix)"'
@@ -81,12 +80,13 @@ jobs:
81
80
SourceFolder : ' out/pub/WebJobs.Script.WebHost'
82
81
Contents : ' **/*.zip'
83
82
TargetFolder : ' $(Build.ArtifactStagingDirectory)'
83
+
84
84
- task : DotNetCoreCLI@2
85
85
displayName : ' Build host packages'
86
86
inputs :
87
87
command : ' custom'
88
88
custom : ' pack'
89
- arguments : -p:BuildNumber=$(buildNumber) -c Release $(packSuffixSwitch)
89
+ arguments : ' -p:BuildNumber=$(buildNumber) -c Release $(packSuffixSwitch) -p:MinorVersionPrefix="$(minorVersionPrefix)" '
90
90
projects : |
91
91
**\WebJobs.Script.csproj
92
92
**\WebJobs.Script.WebHost.csproj
@@ -103,7 +103,7 @@ jobs:
103
103
displayName : ' ESRP CodeSigning: Strong Name and Authenticode'
104
104
inputs :
105
105
ConnectedServiceName : ' ESRP Service'
106
- FolderPath : ' out/bin/WebJobs.Script.Abstractions/release '
106
+ FolderPath : ' out/bin/WebJobs.Script.Abstractions'
107
107
Pattern : Microsoft.Azure.WebJobs.Script.Abstractions*.dll
108
108
signConfigType : inlineSignParams
109
109
inlineOperation : |
@@ -257,8 +257,10 @@ jobs:
257
257
inputs :
258
258
BuildDropPath : ' $(Build.ArtifactStagingDirectory)\SiteExtension'
259
259
Verbosity : ' Information'
260
+
260
261
- publish : $(Build.ArtifactStagingDirectory)\SiteExtension
261
- artifact : SiteExtension
262
+ artifact : _SiteExtension.net$(minorVersionPrefix)
263
+
262
264
- pwsh : |
263
265
if ((test-path $(Build.ArtifactStagingDirectory)\ZippedPatchSiteExtension))
264
266
{
@@ -272,23 +274,23 @@ jobs:
272
274
BuildDropPath : ' $(Build.ArtifactStagingDirectory)\ZippedPatchSiteExtension'
273
275
Verbosity : ' Information'
274
276
condition : and(succeeded(), eq(variables['isPatchVersion'], 'true'))
275
- - publish : $(Build.ArtifactStagingDirectory)\ZippedPatchSiteExtension
276
- artifact : PatchedSiteExtension
277
- condition : and(succeeded(), eq(variables['isPatchVersion'], 'true'))
278
277
- task : ManifestGeneratorTask@0
279
278
displayName : ' SBOM Generation Task - PrivateSiteExtension'
280
279
inputs :
281
280
BuildDropPath : ' $(Build.ArtifactStagingDirectory)\PrivateSiteExtension'
282
281
Verbosity : ' Information'
282
+
283
283
- publish : $(Build.ArtifactStagingDirectory)\PrivateSiteExtension
284
- artifact : PrivateSiteExtension
284
+ artifact : _PrivateSiteExtension.net$(minorVersionPrefix)
285
+
285
286
- task : ManifestGeneratorTask@0
286
287
displayName : ' SBOM Generation Task - Symbols'
287
288
inputs :
288
289
BuildDropPath : ' $(Build.ArtifactStagingDirectory)\Symbols'
289
290
Verbosity : ' Information'
290
291
- publish : $(Build.ArtifactStagingDirectory)\Symbols
291
- artifact : Symbols
292
+ artifact : _Symbols.net$(minorVersionPrefix)
293
+
292
294
- task : ManifestGeneratorTask@0
293
295
displayName : ' SBOM Generation Task - NugetPackages'
294
296
inputs :
@@ -558,3 +560,88 @@ jobs:
558
560
inputs :
559
561
filePath : ' $(Build.Repository.LocalPath)\build\checkin-secrets.ps1'
560
562
arguments : ' -connectionString '' $(Storage-azurefunctionshostci0)'' -leaseBlob $(LeaseBlob) -leaseToken $(LeaseToken)'
563
+
564
+ - job : PublishArtifacts
565
+ dependsOn : BuildArtifacts
566
+ condition : succeeded()
567
+
568
+ steps :
569
+
570
+ - task : DownloadPipelineArtifact@2
571
+ displayName : ' Download _SiteExtension.net6 Artifact'
572
+ inputs :
573
+ buildType : ' current'
574
+ artifact : ' _SiteExtension.net6'
575
+ path : ' $(Build.ArtifactStagingDirectory)/SiteExtension'
576
+
577
+ - task : DownloadPipelineArtifact@2
578
+ displayName : ' Download _SiteExtension.net8 Artifact'
579
+ inputs :
580
+ buildType : ' current'
581
+ artifact : ' _SiteExtension.net8'
582
+ path : ' $(Build.ArtifactStagingDirectory)/SiteExtension'
583
+
584
+ - task : DownloadPipelineArtifact@2
585
+ displayName : ' Download _PrivateSiteExtension.net6 Artifact'
586
+ inputs :
587
+ buildType : ' current'
588
+ artifact : ' _PrivateSiteExtension.net6'
589
+ path : ' $(Build.ArtifactStagingDirectory)/PrivateSiteExtension'
590
+
591
+ - task : DownloadPipelineArtifact@2
592
+ displayName : ' Download _PrivateSiteExtension.net8 Artifact'
593
+ inputs :
594
+ buildType : ' current'
595
+ artifact : ' _PrivateSiteExtension.net8'
596
+ path : ' $(Build.ArtifactStagingDirectory)/PrivateSiteExtension'
597
+
598
+ - task : DownloadPipelineArtifact@2
599
+ displayName : ' Download _Packages.net8 Artifact'
600
+ inputs :
601
+ buildType : ' current'
602
+ artifact : ' _Packages.net8'
603
+ path : ' $(Build.ArtifactStagingDirectory)/packages'
604
+
605
+ - task : DownloadPipelineArtifact@2
606
+ displayName : ' Download Symbols6 Artifact'
607
+ inputs :
608
+ buildType : ' current'
609
+ artifact : ' _Symbols.net6'
610
+ path : ' $(Build.ArtifactStagingDirectory)/Symbols'
611
+
612
+ - task : DownloadPipelineArtifact@2
613
+ displayName : ' Download Symbols8 Artifact'
614
+ inputs :
615
+ buildType : ' current'
616
+ artifact : ' _Symbols.net8'
617
+ path : ' $(Build.ArtifactStagingDirectory)/Symbols'
618
+
619
+ # Publish artifacts.
620
+
621
+ - task : PublishPipelineArtifact@1
622
+ displayName : ' Publish SiteExtension Artifact'
623
+ inputs :
624
+ targetPath : ' $(Build.ArtifactStagingDirectory)/SiteExtension'
625
+ artifact : ' SiteExtension'
626
+ publishLocation : ' pipeline'
627
+
628
+ - task : PublishPipelineArtifact@1
629
+ displayName : ' Publish PrivateSiteExtension Artifact'
630
+ inputs :
631
+ targetPath : ' $(Build.ArtifactStagingDirectory)/PrivateSiteExtension'
632
+ artifact : ' PrivateSiteExtension'
633
+ publishLocation : ' pipeline'
634
+
635
+ - task : PublishPipelineArtifact@1
636
+ displayName : ' Publish Nuget packages Artifact'
637
+ inputs :
638
+ targetPath : ' $(Build.ArtifactStagingDirectory)/packages'
639
+ artifact : ' NugetPackages'
640
+ publishLocation : ' pipeline'
641
+
642
+ - task : PublishPipelineArtifact@1
643
+ displayName : ' Publish Symbols Artifact'
644
+ inputs :
645
+ targetPath : ' $(Build.ArtifactStagingDirectory)/Symbols'
646
+ artifact : ' Symbols'
647
+ publishLocation : ' pipeline'
0 commit comments