Skip to content

Commit 4aa666a

Browse files
Add extra macros parameter to PackageBuild.yml (#16313)
Co-authored-by: jslobodzian <joslobo@microsoft.com>
1 parent a4eac66 commit 4aa666a

1 file changed

Lines changed: 39 additions & 2 deletions

File tree

.pipelines/templates/PackageBuild.yml

Lines changed: 39 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,13 @@ parameters:
2323
default: ""
2424
displayName: "Daily build ID"
2525

26+
- name: extraMacrosFiles
27+
type: object
28+
default: []
29+
# Sample:
30+
# - macros.versions
31+
# - macros.custom
32+
2633
- name: extraPackageRepos
2734
type: string
2835
default: ""
@@ -102,6 +109,10 @@ parameters:
102109
type: string
103110
default: "LOGS"
104111

112+
- name: outputArtifactsMacrosSubfolder
113+
type: string
114+
default: "MACROS"
115+
105116
- name: outputArtifactsPackagesSubfolder
106117
type: string
107118
default: "ARTIFACTS"
@@ -114,6 +125,10 @@ parameters:
114125
type: string
115126
default: ""
116127

128+
- name: outputReleaseVersionsMacrosFileName
129+
type: string
130+
default: ""
131+
117132
- name: outputRPMsCacheTarballName
118133
type: string
119134
default: ""
@@ -167,7 +182,7 @@ steps:
167182
- script: |
168183
toolchain_archive="$(find "${{ parameters.inputArtifactsFolder }}" -name "${{ parameters.customToolchainTarballName }}" -print -quit)"
169184
if [[ ! -f "$toolchain_archive" ]]; then
170-
echo "ERROR: toolchain archive not found!" >&2
185+
echo "##[error]Toolchain archive not found!" >&2
171186
exit 1
172187
fi
173188
echo "##vso[task.setvariable variable=toolchainArchive]$toolchain_archive"
@@ -179,7 +194,7 @@ steps:
179194
- script: |
180195
rpms_archive="$(find "${{ parameters.inputArtifactsFolder }}" -name "${{ inputCacheRPMsTarball }}" -print -quit)"
181196
if [[ ! -f "$rpms_archive" ]]; then
182-
echo "ERROR: cache RPMs archive '${{ inputCacheRPMsTarball }}' not found!" >&2
197+
echo "##[error]Cache RPMs archive '${{ inputCacheRPMsTarball }}' not found!" >&2
183198
exit 1
184199
fi
185200
@@ -239,6 +254,20 @@ steps:
239254
daily_build_update_manifests_arg="DAILY_BUILD_ID_UPDATE_MANIFESTS=n"
240255
fi
241256
257+
extra_macros_file_names="${{ join(' ', parameters.extraMacrosFiles) }}"
258+
if [[ -n "$extra_macros_file_names" ]]; then
259+
extra_macros_files=()
260+
for macros_file_name in $extra_macros_file_names; do
261+
macros_file="$(find "${{ parameters.inputArtifactsFolder }}" -name "$macros_file_name" -print -quit)"
262+
if [[ ! -f "$macros_file" ]]; then
263+
echo "##[error]Extra macros file '$macros_file_name' not found!" >&2
264+
exit 1
265+
fi
266+
extra_macros_files+=("$macros_file")
267+
done
268+
extra_macros_files_arg="EXTRA_MACROS_FILES='${extra_macros_files[*]}'"
269+
fi
270+
242271
sudo make -C "${{ parameters.buildRepoRoot }}/toolkit" build-packages -j$(nproc) \
243272
CONCURRENT_PACKAGE_BUILDS=${{ parameters.concurrentPackageBuilds }} \
244273
CONFIG_FILE="" \
@@ -253,6 +282,7 @@ steps:
253282
$allow_toolchain_rebuilds_arg \
254283
$check_build_retries_arg \
255284
$daily_build_id_arg \
285+
$extra_macros_files_arg \
256286
$daily_build_update_manifests_arg \
257287
$delta_fetch_arg \
258288
$max_cascading_rebuilds_arg \
@@ -296,6 +326,13 @@ steps:
296326
cp "${{ parameters.buildRepoRoot }}"/out/srpms.tar.gz "$published_artifacts_dir/${{ parameters.outputSRPMsTarballName }}"
297327
displayName: "Copy SRPMs for publishing"
298328
329+
- ${{ if parameters.outputReleaseVersionsMacrosFileName }}:
330+
- bash: |
331+
published_macros_dir="${{ parameters.outputArtifactsFolder }}/${{ parameters.outputArtifactsMacrosSubfolder }}"
332+
mkdir -p "$published_macros_dir"
333+
cp "${{ parameters.buildRepoRoot }}/build/pkg_artifacts/macros.releaseversions" "$published_macros_dir/${{ parameters.outputReleaseVersionsMacrosFileName }}"
334+
displayName: "Copy release versions macros for publishing"
335+
299336
- ${{ if parameters.publishLogs }}:
300337
- bash: |
301338
published_logs_dir="${{ parameters.outputArtifactsFolder }}/${{ parameters.outputArtifactsLogsSubfolder }}"

0 commit comments

Comments
 (0)