diff --git a/eng/pipelines/templates/jobs/vmr-build.yml b/eng/pipelines/templates/jobs/vmr-build.yml index b928a70b5537..1d197230391a 100644 --- a/eng/pipelines/templates/jobs/vmr-build.yml +++ b/eng/pipelines/templates/jobs/vmr-build.yml @@ -41,6 +41,11 @@ parameters: type: boolean default: false +# Overrides the rid that is produced by the build. +- name: targetRid + type: string + default: '' + #### SOURCE-ONLY parameters #### # Instead of building the VMR directly, exports the sources into a tarball and builds from that @@ -325,6 +330,10 @@ jobs: customBuildArgs="$customBuildArgs --dev" fi + if [[ -n "${{ parameters.targetRid }}" ]]; then + customBuildArgs="$customBuildArgs --target-rid ${{ parameters.targetRid }}" + fi + if [[ -n "${{ parameters.crossRootFs }}" ]]; then customEnvVars="$customEnvVars ROOTFS_DIR=${{ parameters.crossRootFs}}" if [[ '${{ parameters.targetArchitecture }}' != 'wasm' ]]; then @@ -401,6 +410,10 @@ jobs: customBuildArgs="$customBuildArgs --source-only /p:SmokeTestsWarnOnSdkContentDiffs=true /p:SmokeTestsExcludeOmniSharpTests=${{ parameters.excludeOmniSharpTests }}" fi + if [[ -n "${{ parameters.targetRid }}" ]]; then + customBuildArgs="$customBuildArgs --target-rid ${{ parameters.targetRid }}" + fi + if [[ -n "${{ parameters.extraProperties }}" ]]; then extraBuildProperties="$extraBuildProperties ${{ parameters.extraProperties }}" fi diff --git a/eng/pipelines/templates/stages/vmr-build.yml b/eng/pipelines/templates/stages/vmr-build.yml index 40dd4c38cddd..005e00d21145 100644 --- a/eng/pipelines/templates/stages/vmr-build.yml +++ b/eng/pipelines/templates/stages/vmr-build.yml @@ -132,7 +132,7 @@ stages: artifactsRid: ${{ variables.alpinePreviousX64Rid }} pool: ${{ parameters.pool_Linux }} container: ${{ variables.alpinePreviousContainer }} - extraProperties: /p:TargetRID=${{ variables.alpinePreviousX64Rid }} + targetRid: ${{ variables.alpinePreviousX64Rid }} buildFromArchive: false # 🚫 buildSourceOnly: true # ✅ enablePoison: true # ✅ @@ -154,7 +154,7 @@ stages: architecture: x64 pool: ${{ parameters.pool_Linux }} container: ${{ variables.almaLinuxContainer }} - extraProperties: /p:TargetRID=${{ variables.almaLinuxX64Rid }} + targetRid: ${{ variables.almaLinuxX64Rid }} buildFromArchive: false # 🚫 buildSourceOnly: true # ✅ enablePoison: false # 🚫 @@ -172,7 +172,7 @@ stages: architecture: x64 pool: ${{ parameters.pool_Linux }} container: ${{ variables.alpineLatestContainer }} - extraProperties: /p:TargetRID=${{ variables.alpineLatestX64Rid }} + targetRid: ${{ variables.alpineLatestX64Rid }} buildFromArchive: false # 🚫 buildSourceOnly: true # ✅ enablePoison: false # 🚫 @@ -876,7 +876,7 @@ stages: crossRootFs: '/crossrootfs/x64' targetOS: linux-musl targetArchitecture: x64 - extraProperties: /p:TargetRID=linux-musl-x64 + targetRid: ${{ variables.linuxMuslX64Rid}} - template: ../jobs/vmr-build.yml parameters: @@ -890,7 +890,7 @@ stages: useMonoRuntime: true targetOS: linux-musl targetArchitecture: x64 - extraProperties: /p:TargetRID=linux-musl-x64 + targetRid: ${{ variables.linuxMuslX64Rid }} - template: ../jobs/vmr-build.yml parameters: @@ -903,7 +903,7 @@ stages: crossRootFs: '/crossrootfs/arm' targetOS: linux-musl targetArchitecture: arm - extraProperties: /p:TargetRID=linux-musl-arm + targetRid: ${{ variables.linuxMuslArmRid }} - template: ../jobs/vmr-build.yml parameters: @@ -916,7 +916,7 @@ stages: crossRootFs: '/crossrootfs/arm64' targetOS: linux-musl targetArchitecture: arm64 - extraProperties: /p:TargetRID=linux-musl-arm64 + targetRid: ${{ variables.linuxMuslArm64Rid }} - template: ../jobs/vmr-build.yml parameters: diff --git a/eng/pipelines/templates/variables/vmr-build.yml b/eng/pipelines/templates/variables/vmr-build.yml index 32b0943dddc5..d50de3b913b0 100644 --- a/eng/pipelines/templates/variables/vmr-build.yml +++ b/eng/pipelines/templates/variables/vmr-build.yml @@ -62,6 +62,12 @@ variables: - name: almaLinuxX64Rid value: almalinux.8-x64 +- name: linuxMuslX64Rid + value: linux-musl-x64 +- name: linuxMuslArmRid + value: linux-musl-arm +- name: linuxMuslArm64Rid + value: linux-musl-arm64 - name: alpineLatestX64Rid value: alpine.3.20-x64 - name: alpinePreviousX64Rid