From 2540836124fe594e7e26272307395a848913f066 Mon Sep 17 00:00:00 2001
From: Rich Lander <rlander@microsoft.com>
Date: Wed, 30 Apr 2025 13:02:05 -0700
Subject: [PATCH 1/5] Update helix references

---
 .azure/pipelines/ci.yml                       |  2 +-
 eng/targets/Helix.Common.props                | 26 +++++++++----------
 eng/targets/Helix.targets                     |  8 +++---
 src/ProjectTemplates/README.md                |  4 +--
 .../Templates.Mvc.Tests.csproj                |  6 ++---
 src/Testing/src/xunit/HelixConstants.cs       |  6 ++---
 6 files changed, 26 insertions(+), 26 deletions(-)

diff --git a/.azure/pipelines/ci.yml b/.azure/pipelines/ci.yml
index 14c08ee99d7a..204c83341af1 100644
--- a/.azure/pipelines/ci.yml
+++ b/.azure/pipelines/ci.yml
@@ -676,7 +676,7 @@ extends:
           enableInternalSources: true
           platform:
             name: 'Managed'
-            container: 'mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream8'
+            container: 'mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream-10-amd64'
             buildScript: './eng/build.sh --publish --no-build-repo-tasks $(_PublishArgs) $(_InternalRuntimeDownloadArgs)'
             skipPublishValidation: true
             jobProperties:
diff --git a/eng/targets/Helix.Common.props b/eng/targets/Helix.Common.props
index c5628d35c2ff..8b8207dd2abb 100644
--- a/eng/targets/Helix.Common.props
+++ b/eng/targets/Helix.Common.props
@@ -1,12 +1,12 @@
 <Project>
   <!-- This file is shared between Helix.proj and .csproj files. -->
   <PropertyGroup>
-    <HelixQueueAlmaLinux8>(AlmaLinux.8.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:almalinux-8-helix-amd64</HelixQueueAlmaLinux8>
-    <HelixQueueAlpine318>(Alpine.318.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.18-helix-amd64</HelixQueueAlpine318>
-    <HelixQueueDebian12>(Debian.12.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-12-helix-amd64</HelixQueueDebian12>
-    <HelixQueueFedora41>(Fedora.41.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-41-helix</HelixQueueFedora41>
-    <HelixQueueMariner>(Mariner)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:cbl-mariner-2.0-helix-amd64</HelixQueueMariner>
-    <HelixQueueArmDebian12>(Debian.12.Arm64.Open)ubuntu.2204.armarch.open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-12-helix-arm64v8</HelixQueueArmDebian12>
+    <HelixQueueAlmaLinux>(AlmaLinux.9.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:almalinux-9-helix-amd64</HelixQueueAlmaLinux>
+    <HelixQueueAlpine>(Alpine.321.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.21-helix-amd64</HelixQueueAlpine>
+    <HelixQueueDebian>(Debian.13.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-13-helix-amd64</HelixQueueDebian>
+    <HelixQueueFedora>(Fedora.42.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/fedora-42-helix-amd64</HelixQueueFedora>
+    <HelixQueueAzureLinux>(AzureLinux.30.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-helix-amd64</HelixQueueAzureLinux>
+    <HelixQueueArmDebian>(Debian.13.Arm64.Open)ubuntu.2204.armarch.open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-13-helix-arm64v8</HelixQueueArmDebian>
 
     <!-- Do not attempt to override global property. -->
     <RunQuarantinedTests Condition=" '$(RunQuarantinedTests)' == '' ">false</RunQuarantinedTests>
@@ -28,7 +28,7 @@
       <!-- aspnetcore-ci[-official] (ci.yml) -->
       <!-- aspnetcore-quarantined-pr (quarantined-pr.yml) -->
       <ItemGroup>
-        <HelixAvailableTargetQueue Include="Ubuntu.2004.Amd64.Open" Platform="Linux" />
+        <HelixAvailableTargetQueue Include="Ubuntu.2204.Amd64.Open" Platform="Linux" />
         <HelixAvailableTargetQueue Include="OSX.15.Amd64.Open" Platform="OSX" />
         <HelixAvailableTargetQueue Include="Windows.11.Amd64.Client.Open" Platform="Windows" />
       </ItemGroup>
@@ -38,14 +38,14 @@
       <!-- aspnetcore-quarantined-tests (quarantined-tests.yml) and RunHelix.ps1 -RunQuarantinedTests -->
       <ItemGroup>
         <!-- Linux -->
-        <HelixAvailableTargetQueue Include="$(HelixQueueAlmaLinux8)" Platform="Linux" />
+        <HelixAvailableTargetQueue Include="$(HelixQueueAlmaLinux)" Platform="Linux" />
 
         <!-- Containers -->
-        <HelixAvailableTargetQueue Include="$(HelixQueueAlpine318)" Platform="Linux" />
-        <HelixAvailableTargetQueue Include="$(HelixQueueDebian12)" Platform="Linux" />
-        <HelixAvailableTargetQueue Include="$(HelixQueueFedora41)" Platform="Linux" />
-        <HelixAvailableTargetQueue Include="$(HelixQueueMariner)" Platform="Linux" />
-        <HelixAvailableTargetQueue Include="$(HelixQueueArmDebian12)" Platform="Linux" />
+        <HelixAvailableTargetQueue Include="$(HelixQueueAlpine)" Platform="Linux" />
+        <HelixAvailableTargetQueue Include="$(HelixQueueDebian)" Platform="Linux" />
+        <HelixAvailableTargetQueue Include="$(HelixQueueFedora)" Platform="Linux" />
+        <HelixAvailableTargetQueue Include="$(HelixQueueAzureLinux)" Platform="Linux" />
+        <HelixAvailableTargetQueue Include="$(HelixQueueArmDebian)" Platform="Linux" />
 
         <!-- Mac -->
         <HelixAvailableTargetQueue Include="OSX.15.Amd64.Open" Platform="OSX" />
diff --git a/eng/targets/Helix.targets b/eng/targets/Helix.targets
index 70e01877befa..ad4eef434b4c 100644
--- a/eng/targets/Helix.targets
+++ b/eng/targets/Helix.targets
@@ -16,12 +16,12 @@
 
   <PropertyGroup Condition="'$(TestDependsOnPlaywright)' == 'true'">
     <SkipHelixQueues>
-      $(HelixQueueAlmaLinux8);
-      $(HelixQueueAlpine318);
-      $(HelixQueueDebian12);
+      $(HelixQueueAlmaLinux);
+      $(HelixQueueAlpine);
+      $(HelixQueueDebian);
       $(HelixQueueFedora40);
       $(HelixQueueMariner);
-      Ubuntu.2004.Amd64.Open;
+      Ubuntu.2204.Amd64.Open;
     </SkipHelixQueues>
     <SkipHelixArm>true</SkipHelixArm>
   </PropertyGroup>
diff --git a/src/ProjectTemplates/README.md b/src/ProjectTemplates/README.md
index 9fb481dee3eb..7d34c1a26a24 100644
--- a/src/ProjectTemplates/README.md
+++ b/src/ProjectTemplates/README.md
@@ -97,7 +97,7 @@ An entire test project can be configured to skip specific platforms using the `<
 
 ```xml
 <SkipHelixQueues>
-    $(HelixQueueArmDebian12);
+    $(HelixQueueArmDebian);
 </SkipHelixQueues>
 ```
 
@@ -109,7 +109,7 @@ When tests are run as part of the CI infrastructure, a number of different timeo
 
 ##### Helix job timeout
 
-When queuing test jobs to the Helix infrastructure, a timeout value is passed that the entire Helix job must complete within, i.e. that job running on a single queue. This default value is set in [eng\targets\Helix.props](/eng/targets/Helix.props): 
+When queuing test jobs to the Helix infrastructure, a timeout value is passed that the entire Helix job must complete within, i.e. that job running on a single queue. This default value is set in [eng\targets\Helix.props](/eng/targets/Helix.props):
 
 ```xml
 <HelixTimeout>00:45:00</HelixTimeout>
diff --git a/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj b/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj
index e9371e45210f..c735e0b68baf 100644
--- a/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj
+++ b/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj
@@ -27,9 +27,9 @@
     <!-- These tests fail in Helix in Debian and Mariner due to error -901 -->
     <!-- Disabling on those OSes until a better fix can be identified -->
     <SkipHelixQueues>
-      $(HelixQueueArmDebian12);
-      $(HelixQueueDebian12);
-      $(HelixQueueMariner);
+      $(HelixQueueArmDebian);
+      $(HelixQueueDebian);
+      $(HelixQueueAzureLinux);
       $(SkipHelixQueues)
     </SkipHelixQueues>
   </PropertyGroup>
diff --git a/src/Testing/src/xunit/HelixConstants.cs b/src/Testing/src/xunit/HelixConstants.cs
index 47f938e8446f..c3a43ef3b2de 100644
--- a/src/Testing/src/xunit/HelixConstants.cs
+++ b/src/Testing/src/xunit/HelixConstants.cs
@@ -6,8 +6,8 @@ namespace Microsoft.AspNetCore.InternalTesting;
 public static class HelixConstants
 {
     public const string Windows10Arm64 = "Windows.10.Arm64v8.Open;";
-    public const string DebianAmd64 = "Debian.11.Amd64.Open;";
-    public const string DebianArm64 = "Debian.11.Arm64.Open;";
-    public const string AlmaLinuxAmd64 = "(AlmaLinux.8.Amd64.Open)Ubuntu.1804.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:almalinux-8-helix-amd64;";
+    public const string DebianAmd64 = "Debian.13.Amd64.Open;";
+    public const string DebianArm64 = "Debian.13.Arm64.Open;";
+    public const string AlmaLinuxAmd64 = "(AlmaLinux.9.Amd64.Open)Ubuntu.1804.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:almalinux-9-helix-amd64;";
     public const string NativeAotNotSupportedHelixQueues = "All.OSX;All.Linux;Windows.11.Amd64.Client.Open;Windows.11.Amd64.Client;Windows.Amd64.Server2022.Open;Windows.Amd64.Server2022;windows.11.arm64.open;windows.11.arm64";
 }

From c70bbb3e523d26d03abeab6c7956890355e1dcdf Mon Sep 17 00:00:00 2001
From: Rich Lander <rlander@microsoft.com>
Date: Wed, 7 May 2025 16:15:45 -0700
Subject: [PATCH 2/5] Update VM queues to AL3

---
 eng/targets/Helix.Common.props                     | 14 ++++++++------
 eng/targets/Helix.targets                          |  2 +-
 .../Templates.Mvc.Tests/Templates.Mvc.Tests.csproj |  2 +-
 src/Testing/src/xunit/HelixConstants.cs            |  2 +-
 4 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/eng/targets/Helix.Common.props b/eng/targets/Helix.Common.props
index 8b8207dd2abb..f2e774f19fca 100644
--- a/eng/targets/Helix.Common.props
+++ b/eng/targets/Helix.Common.props
@@ -1,11 +1,12 @@
 <Project>
   <!-- This file is shared between Helix.proj and .csproj files. -->
   <PropertyGroup>
-    <HelixQueueAlmaLinux>(AlmaLinux.9.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:almalinux-9-helix-amd64</HelixQueueAlmaLinux>
-    <HelixQueueAlpine>(Alpine.321.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.21-helix-amd64</HelixQueueAlpine>
-    <HelixQueueDebian>(Debian.13.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-13-helix-amd64</HelixQueueDebian>
-    <HelixQueueFedora>(Fedora.42.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/fedora-42-helix-amd64</HelixQueueFedora>
-    <HelixQueueAzureLinux>(AzureLinux.30.Amd64.Open)Ubuntu.2204.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-helix-amd64</HelixQueueAzureLinux>
+    <HelixQueueAlmaLinux>(AlmaLinux.9.Amd64.Open)azurelinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:almalinux-9-helix-amd64</HelixQueueAlmaLinux>
+    <HelixQueueAlpine>(Alpine.321.Amd64.Open)azurelinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.21-helix-amd64</HelixQueueAlpine>
+    <HelixQueueAzureLinux>(AzureLinux.30.Amd64.Open)azurelinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-helix-amd64</HelixQueueAzureLinux>
+    <HelixQueueDebian>(Debian.13.Amd64.Open)azurelinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-13-helix-amd64</HelixQueueDebian>
+    <HelixQueueFedora>(Fedora.42.Amd64.Open)azurelinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/fedora-42-helix-amd64</HelixQueueFedora>
+    <!-- Arm64 -->
     <HelixQueueArmDebian>(Debian.13.Arm64.Open)ubuntu.2204.armarch.open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-13-helix-arm64v8</HelixQueueArmDebian>
 
     <!-- Do not attempt to override global property. -->
@@ -42,9 +43,10 @@
 
         <!-- Containers -->
         <HelixAvailableTargetQueue Include="$(HelixQueueAlpine)" Platform="Linux" />
+        <HelixAvailableTargetQueue Include="$(HelixQueueAzureLinux)" Platform="Linux" />
         <HelixAvailableTargetQueue Include="$(HelixQueueDebian)" Platform="Linux" />
         <HelixAvailableTargetQueue Include="$(HelixQueueFedora)" Platform="Linux" />
-        <HelixAvailableTargetQueue Include="$(HelixQueueAzureLinux)" Platform="Linux" />
+        <!-- Arm64 -->
         <HelixAvailableTargetQueue Include="$(HelixQueueArmDebian)" Platform="Linux" />
 
         <!-- Mac -->
diff --git a/eng/targets/Helix.targets b/eng/targets/Helix.targets
index ad4eef434b4c..eef1c0f22b10 100644
--- a/eng/targets/Helix.targets
+++ b/eng/targets/Helix.targets
@@ -18,9 +18,9 @@
     <SkipHelixQueues>
       $(HelixQueueAlmaLinux);
       $(HelixQueueAlpine);
+      $(HelixQueueAzureLinux);
       $(HelixQueueDebian);
       $(HelixQueueFedora40);
-      $(HelixQueueMariner);
       Ubuntu.2204.Amd64.Open;
     </SkipHelixQueues>
     <SkipHelixArm>true</SkipHelixArm>
diff --git a/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj b/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj
index c735e0b68baf..e4150c38bcd7 100644
--- a/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj
+++ b/src/ProjectTemplates/test/Templates.Mvc.Tests/Templates.Mvc.Tests.csproj
@@ -28,8 +28,8 @@
     <!-- Disabling on those OSes until a better fix can be identified -->
     <SkipHelixQueues>
       $(HelixQueueArmDebian);
-      $(HelixQueueDebian);
       $(HelixQueueAzureLinux);
+      $(HelixQueueDebian);
       $(SkipHelixQueues)
     </SkipHelixQueues>
   </PropertyGroup>
diff --git a/src/Testing/src/xunit/HelixConstants.cs b/src/Testing/src/xunit/HelixConstants.cs
index c3a43ef3b2de..d47d10bdd026 100644
--- a/src/Testing/src/xunit/HelixConstants.cs
+++ b/src/Testing/src/xunit/HelixConstants.cs
@@ -8,6 +8,6 @@ public static class HelixConstants
     public const string Windows10Arm64 = "Windows.10.Arm64v8.Open;";
     public const string DebianAmd64 = "Debian.13.Amd64.Open;";
     public const string DebianArm64 = "Debian.13.Arm64.Open;";
-    public const string AlmaLinuxAmd64 = "(AlmaLinux.9.Amd64.Open)Ubuntu.1804.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:almalinux-9-helix-amd64;";
+    public const string AlmaLinuxAmd64 = "(AlmaLinux.9.Amd64.Open)azurelinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:almalinux-9-helix-amd64;";
     public const string NativeAotNotSupportedHelixQueues = "All.OSX;All.Linux;Windows.11.Amd64.Client.Open;Windows.11.Amd64.Client;Windows.Amd64.Server2022.Open;Windows.Amd64.Server2022;windows.11.arm64.open;windows.11.arm64";
 }

From 46ad707f0069980dd3c7fb94b5b79302df4ead40 Mon Sep 17 00:00:00 2001
From: Rich Lander <rlander@microsoft.com>
Date: Wed, 7 May 2025 19:54:47 -0700
Subject: [PATCH 3/5] Revert Ubuntu change

---
 eng/targets/Helix.targets | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eng/targets/Helix.targets b/eng/targets/Helix.targets
index eef1c0f22b10..d58bc8feedde 100644
--- a/eng/targets/Helix.targets
+++ b/eng/targets/Helix.targets
@@ -21,7 +21,7 @@
       $(HelixQueueAzureLinux);
       $(HelixQueueDebian);
       $(HelixQueueFedora40);
-      Ubuntu.2204.Amd64.Open;
+      Ubuntu.2004.Amd64.Open;
     </SkipHelixQueues>
     <SkipHelixArm>true</SkipHelixArm>
   </PropertyGroup>

From 21f870cb1c67145b66e8351740cb092d7a266baf Mon Sep 17 00:00:00 2001
From: Rich Lander <rlander@microsoft.com>
Date: Thu, 8 May 2025 15:53:08 -0700
Subject: [PATCH 4/5] Update eng/targets/Helix.Common.props

Co-authored-by: William Godbe <wigodbe@microsoft.com>
---
 eng/targets/Helix.Common.props | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eng/targets/Helix.Common.props b/eng/targets/Helix.Common.props
index f2e774f19fca..f2cc0245d3cc 100644
--- a/eng/targets/Helix.Common.props
+++ b/eng/targets/Helix.Common.props
@@ -29,7 +29,7 @@
       <!-- aspnetcore-ci[-official] (ci.yml) -->
       <!-- aspnetcore-quarantined-pr (quarantined-pr.yml) -->
       <ItemGroup>
-        <HelixAvailableTargetQueue Include="Ubuntu.2204.Amd64.Open" Platform="Linux" />
+        <HelixAvailableTargetQueue Include="Ubuntu.2004.Amd64.Open" Platform="Linux" />
         <HelixAvailableTargetQueue Include="OSX.15.Amd64.Open" Platform="OSX" />
         <HelixAvailableTargetQueue Include="Windows.11.Amd64.Client.Open" Platform="Windows" />
       </ItemGroup>

From 92639fb42f609a40b15bb8f769bec4013482c0bc Mon Sep 17 00:00:00 2001
From: Rich Lander <rlander@microsoft.com>
Date: Fri, 9 May 2025 08:53:38 -0700
Subject: [PATCH 5/5] Update registry URL

---
 eng/targets/Helix.Common.props | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eng/targets/Helix.Common.props b/eng/targets/Helix.Common.props
index f2cc0245d3cc..e517b9410d27 100644
--- a/eng/targets/Helix.Common.props
+++ b/eng/targets/Helix.Common.props
@@ -5,7 +5,7 @@
     <HelixQueueAlpine>(Alpine.321.Amd64.Open)azurelinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.21-helix-amd64</HelixQueueAlpine>
     <HelixQueueAzureLinux>(AzureLinux.30.Amd64.Open)azurelinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-helix-amd64</HelixQueueAzureLinux>
     <HelixQueueDebian>(Debian.13.Amd64.Open)azurelinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-13-helix-amd64</HelixQueueDebian>
-    <HelixQueueFedora>(Fedora.42.Amd64.Open)azurelinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/fedora-42-helix-amd64</HelixQueueFedora>
+    <HelixQueueFedora>(Fedora.42.Amd64.Open)azurelinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-42-helix-amd64</HelixQueueFedora>
     <!-- Arm64 -->
     <HelixQueueArmDebian>(Debian.13.Arm64.Open)ubuntu.2204.armarch.open@mcr.microsoft.com/dotnet-buildtools/prereqs:debian-13-helix-arm64v8</HelixQueueArmDebian>