avoid expensive ref counting for CompareInfo on Linux (#25117)
[platform/upstream/coreclr.git] / eng / common / templates / post-build / channels / public-dev-release.yml
1 parameters:
2   enableSymbolValidation: true
3
4 stages:
5 - stage: Publish
6   dependsOn: validate
7   variables:
8     - template: ../common-variables.yml
9   displayName: Developer Channel
10   jobs:
11   - template: ../setup-maestro-vars.yml
12
13   - job:
14     displayName: Symbol Publishing
15     dependsOn: setupMaestroVars
16     condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], variables.PublicDevRelease_30_Channel_Id)
17     variables:
18       - group: DotNet-Symbol-Server-Pats
19     pool:
20       vmImage: 'windows-2019'
21     steps:
22       - task: DownloadBuildArtifacts@0
23         displayName: Download PDB Artifacts
24         inputs:
25           buildType: current
26           artifactName: PDBArtifacts
27         continueOnError: true
28
29       - task: DownloadBuildArtifacts@0
30         displayName: Download Blob Artifacts
31         inputs:
32           buildType: current
33           artifactName: BlobArtifacts
34
35       - task: PowerShell@2
36         displayName: Publish
37         inputs:
38           filePath: eng\common\sdk-task.ps1
39           arguments: -task PublishToSymbolServers -restore -msbuildEngine dotnet
40             /p:DotNetSymbolServerTokenMsdl=$(microsoft-symbol-server-pat) 
41             /p:DotNetSymbolServerTokenSymWeb=$(symweb-symbol-server-pat) 
42             /p:PDBArtifactsDirectory='$(Build.ArtifactStagingDirectory)/PDBArtifacts/'
43             /p:BlobBasePath='$(Build.ArtifactStagingDirectory)/BlobArtifacts/'
44             /p:Configuration=Release
45
46   - job:
47     displayName: Publish to Static Feed
48     dependsOn: setupMaestroVars
49     variables:
50       - group: DotNet-Blob-Feed
51       - group: Publish-Build-Assets
52       - name: BARBuildId
53         value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
54     condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], variables.PublicDevRelease_30_Channel_Id)
55     pool:
56       vmImage: 'windows-2019'
57     steps:
58       - task: DownloadBuildArtifacts@0
59         displayName: Download Package Artifacts
60         inputs:
61           buildType: current
62           artifactName: PackageArtifacts
63
64       - task: DownloadBuildArtifacts@0
65         displayName: Download Blob Artifacts
66         inputs:
67           buildType: current
68           artifactName: BlobArtifacts
69
70       - task: DownloadBuildArtifacts@0
71         displayName: Download Asset Manifests
72         inputs:
73           buildType: current
74           artifactName: AssetManifests
75
76       - task: PowerShell@2
77         displayName: Publish
78         inputs:
79           filePath: eng\common\sdk-task.ps1
80           arguments: -task PublishToPackageFeed -restore -msbuildEngine dotnet 
81             /p:AccountKeyToStaticFeed='$(dotnetfeed-storage-access-key-1)' 
82             /p:BARBuildId=$(BARBuildId) 
83             /p:MaestroApiEndpoint='https://maestro-prod.westus2.cloudapp.azure.com'
84             /p:BuildAssetRegistryToken='$(MaestroAccessToken)' 
85             /p:ManifestsBasePath='$(Build.ArtifactStagingDirectory)/AssetManifests/' 
86             /p:BlobBasePath='$(Build.ArtifactStagingDirectory)/BlobArtifacts/' 
87             /p:PackageBasePath='$(Build.ArtifactStagingDirectory)/PackageArtifacts/' 
88             /p:ArtifactsCategory='$(_DotNetArtifactsCategory)' 
89             /p:OverrideAssetsWithSameName=true 
90             /p:PassIfExistingItemIdentical=true 
91             /p:Configuration=Release 
92         
93
94 - stage: PublishValidation
95   displayName: Publish Validation
96   variables:
97     - template: ../common-variables.yml  
98   jobs:
99   - template: ../setup-maestro-vars.yml
100
101   - ${{ if eq(parameters.enableSymbolValidation, 'true') }}:
102     - job:
103       displayName: Symbol Availability
104       dependsOn: setupMaestroVars
105       condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], variables.PublicDevRelease_30_Channel_Id)
106       pool:
107         vmImage: 'windows-2019'
108       steps:
109         - task: DownloadBuildArtifacts@0
110           displayName: Download Package Artifacts
111           inputs:
112             buildType: current
113             artifactName: PackageArtifacts
114
115         - task: PowerShell@2
116           displayName: Check Symbol Availability
117           inputs:
118             filePath: $(Build.SourcesDirectory)/eng/common/post-build/symbols-validation.ps1
119             arguments: -InputPath $(Build.ArtifactStagingDirectory)/PackageArtifacts/ -ExtractPath $(Agent.BuildDirectory)/Temp/ -DotnetSymbolVersion $(SymbolToolVersion)
120
121   - job:
122     displayName: Gather Drop
123     dependsOn: setupMaestroVars
124     variables:
125       BARBuildId: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.BARBuildId'] ]
126     condition: contains(dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], variables.PublicDevRelease_30_Channel_Id)
127     pool:
128       vmImage: 'windows-2019'
129     steps:
130       - task: PowerShell@2
131         displayName: Setup Darc CLI
132         inputs:
133           targetType: filePath
134           filePath: '$(Build.SourcesDirectory)/eng/common/darc-init.ps1'
135
136       - task: PowerShell@2
137         displayName: Run Darc gather-drop
138         inputs:
139           targetType: inline
140           script: |
141             darc gather-drop --non-shipping --continue-on-error --id $(BARBuildId) --output-dir $(Agent.BuildDirectory)/Temp/Drop/ --bar-uri https://maestro-prod.westus2.cloudapp.azure.com/ --password $(MaestroAccessToken)
142         continueOnError: true
143
144   - template: ../promote-build.yml
145     parameters:
146       ChannelId: ${{ variables.PublicDevRelease_30_Channel_Id }}