Update portable linux source-build legs to use AlmaLinux to better represent building...
authorJeremy Koritzinsky <jekoritz@microsoft.com>
Fri, 12 May 2023 02:01:50 +0000 (19:01 -0700)
committerGitHub <noreply@github.com>
Fri, 12 May 2023 02:01:50 +0000 (19:01 -0700)
eng/pipelines/common/platform-matrix.yml
eng/pipelines/common/templates/pipeline-with-resources.yml
eng/pipelines/runtime.yml

index 084bf83ab1df8c6f7b76a45d77ba25dbb090d6bf..4eac2bb44d61207abf39c52a75584a1a6337d77c 100644 (file)
@@ -269,9 +269,9 @@ jobs:
         helixQueueGroup: ${{ parameters.helixQueueGroup }}
         ${{ insert }}: ${{ parameters.jobParameters }}
 
-# Centos 7 x64 Source Build
+# Centos 8 Stream x64 Source Build
 
-- ${{ if containsValue(parameters.platforms, 'SourceBuild_centos7_x64') }}:
+- ${{ if containsValue(parameters.platforms, 'SourceBuild_centos8_x64') }}:
   - template: xplat-setup.yml
     parameters:
       jobTemplate: ${{ parameters.jobTemplate }}
@@ -279,12 +279,10 @@ jobs:
       variables: ${{ parameters.variables }}
       osGroup: linux
       archType: x64
-      targetRid: centos.7-x64
-      platform: centos7_linux_x64
+      targetRid: centos.8-x64
+      platform: centos8_linux_x64
       shouldContinueOnError: ${{ parameters.shouldContinueOnError }}
-      container:
-        image: centos-7-source-build
-        registry: mcr
+      container: SourceBuild_centos_x64
       jobParameters:
         runtimeFlavor: ${{ parameters.runtimeFlavor }}
         buildConfig: ${{ parameters.buildConfig }}
@@ -306,9 +304,7 @@ jobs:
       targetRid: banana.24-x64
       platform: banana24_linux_x64
       shouldContinueOnError: ${{ parameters.shouldContinueOnError }}
-      container:
-        image: centos-7-source-build-20210714125450-5d87b80
-        registry: mcr
+      container: SourceBuild_centos_x64 # Run the unknown-rid build on a platform with a known RID so our RID graph tooling can automatically add it to the RID graph.
       jobParameters:
         runtimeFlavor: ${{ parameters.runtimeFlavor }}
         buildConfig: ${{ parameters.buildConfig }}
index 38db7a6cb1c156b19b826d637106e8d2d78300d1..636599fbcf52be24c30f2ca66cd63d00209752b1 100644 (file)
@@ -51,11 +51,14 @@ resources:
     - container: linux_x64_dev_innerloop
       image: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04
 
-    # CentOS 8 Stream is the closest image to RHEL8, which has the oldest toolsets we support building against
-    # for our source-build partners.
-    - container: SourceBuild_linux_x64
+    # We use a CentOS Stream 8 image here to test building from source on CentOS Stream 8.
+    - container: SourceBuild_centos_x64
       image: mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream8
 
+    # AlmaLinux 8 is a RHEL 8 rebuild, so we use it to test building from source on RHEL 8.
+    - container: SourceBuild_linux_x64
+      image: mcr.microsoft.com/dotnet-buildtools/prereqs:almalinux-8-source-build
+
     - container: linux_s390x
       image: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-cross-s390x
       env:
index 025997aadde2c21d0291f8585956d922c3ee96e4..c91616ebbbddf499ab503e5e1f4e2b0767eef119 100644 (file)
@@ -567,7 +567,7 @@ extends:
       # Build the whole product using Mono and run libraries tests
       #
       #
-      # Disabled pending queue backup investigation 
+      # Disabled pending queue backup investigation
       #
       #- template: /eng/pipelines/common/platform-matrix.yml
       #  parameters:
@@ -1411,11 +1411,11 @@ extends:
       #
       # Sourcebuild legs
       # We have 3 important legs for source-build:
-      # - Centos.7 (ensures that RH keeps working)
+      # - Centos.8 (ensures that known non-portable RID is working)
       # - Linux-x64 portable (used for dependency flow and downstream PR verification)
       # - Banana.24 - Non-existent RID to ensure we don't break RIDs we don't know about.
       #
-      # Running all of these everywhere is wasteful. Run Banana.24 and CentOS.7 in rolling CI,
+      # Running all of these everywhere is wasteful. Run Banana.24 and CentOS.8 in rolling CI,
       # Run Linux-x64 in PR.
 
       - template: /eng/pipelines/common/platform-matrix.yml
@@ -1424,9 +1424,9 @@ extends:
           buildConfig: Release
           helixQueueGroup: pr
           platforms:
-          - SourceBuild_centos7_x64
+          - SourceBuild_centos8_x64
           jobParameters:
-            nameSuffix: centos7SourceBuild
+            nameSuffix: centos8SourceBuild
             extraStepsParameters:
               name: SourceBuildPackages
             timeoutInMinutes: 95