Skip to content

Commit 69b8668

Browse files
authored
Port remaining changes from v4 publishing experiment to Arcade to enable expected usage of v4 publishing (#15862)
1 parent 66160c5 commit 69b8668

File tree

1 file changed

+42
-7
lines changed

1 file changed

+42
-7
lines changed

eng/common/core-templates/job/publish-build-assets.yml

Lines changed: 42 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,12 @@ parameters:
3232
# Optional: 🌤️ or not the build has assets it wants to publish to BAR
3333
isAssetlessBuild: false
3434

35+
# Optional, publishing version
36+
publishingVersion: 3
37+
38+
# Optional: A minimatch pattern for the asset manifests to publish to BAR
39+
assetManifestsPattern: '*/manifests/**/*.xml'
40+
3541
jobs:
3642
- job: Asset_Registry_Publish
3743

@@ -77,13 +83,31 @@ jobs:
7783
clean: true
7884

7985
- ${{ if eq(parameters.isAssetlessBuild, 'false') }}:
80-
- task: DownloadPipelineArtifact@2
81-
displayName: Download Asset Manifests
82-
inputs:
83-
artifactName: AssetManifests
84-
targetPath: '$(Build.StagingDirectory)/AssetManifests'
85-
condition: ${{ parameters.condition }}
86-
continueOnError: ${{ parameters.continueOnError }}
86+
- ${{ if eq(parameters.publishingVersion, 3) }}:
87+
- task: DownloadPipelineArtifact@2
88+
displayName: Download Asset Manifests
89+
inputs:
90+
artifactName: AssetManifests
91+
targetPath: '$(Build.StagingDirectory)/AssetManifests'
92+
condition: ${{ parameters.condition }}
93+
continueOnError: ${{ parameters.continueOnError }}
94+
- ${{ if eq(parameters.publishingVersion, 4) }}:
95+
- task: DownloadPipelineArtifact@2
96+
displayName: Download V4 asset manifests
97+
inputs:
98+
itemPattern: '*/manifests/**/*.xml'
99+
targetPath: '$(Build.StagingDirectory)/AllAssetManifests'
100+
condition: ${{ parameters.condition }}
101+
continueOnError: ${{ parameters.continueOnError }}
102+
- task: CopyFiles@2
103+
displayName: Copy V4 asset manifests to AssetManifests
104+
inputs:
105+
SourceFolder: '$(Build.StagingDirectory)/AllAssetManifests'
106+
Contents: ${{ parameters.assetManifestsPattern }}
107+
TargetFolder: '$(Build.StagingDirectory)/AssetManifests'
108+
flattenFolders: true
109+
condition: ${{ parameters.condition }}
110+
continueOnError: ${{ parameters.continueOnError }}
87111

88112
- task: NuGetAuthenticate@1
89113

@@ -120,6 +144,17 @@ jobs:
120144
Copy-Item -Path $symbolExclusionfile -Destination "$(Build.StagingDirectory)/ReleaseConfigs"
121145
}
122146
147+
- ${{ if eq(parameters.publishingVersion, 4) }}:
148+
- template: /eng/common/core-templates/steps/publish-pipeline-artifacts.yml
149+
parameters:
150+
is1ESPipeline: ${{ parameters.is1ESPipeline }}
151+
args:
152+
targetPath: '$(Build.ArtifactStagingDirectory)/MergedManifest.xml'
153+
artifactName: AssetManifests
154+
displayName: 'Publish Merged Manifest'
155+
retryCountOnTaskFailure: 10 # for any logs being locked
156+
sbomEnabled: false # we don't need SBOM for logs
157+
123158
- template: /eng/common/core-templates/steps/publish-build-artifacts.yml
124159
parameters:
125160
is1ESPipeline: ${{ parameters.is1ESPipeline }}

0 commit comments

Comments
 (0)