diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index 1a90b1a91e9..c20bc8dd60b 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -75,25 +75,25 @@
-
+
https://github.com/dotnet/arcade
- bc35747acd136d5aca170df4ec527c346db76c8e
+ 834d09f0c963da37c88aed7ba3a83acafe582948
-
+
https://github.com/dotnet/arcade
- bc35747acd136d5aca170df4ec527c346db76c8e
+ 834d09f0c963da37c88aed7ba3a83acafe582948
-
+
https://github.com/dotnet/arcade
- bc35747acd136d5aca170df4ec527c346db76c8e
+ 834d09f0c963da37c88aed7ba3a83acafe582948
-
+
https://github.com/dotnet/arcade
- bc35747acd136d5aca170df4ec527c346db76c8e
+ 834d09f0c963da37c88aed7ba3a83acafe582948
-
+
https://github.com/dotnet/arcade
- bc35747acd136d5aca170df4ec527c346db76c8e
+ 834d09f0c963da37c88aed7ba3a83acafe582948
diff --git a/eng/Versions.props b/eng/Versions.props
index ce971593b08..4225d7c27b2 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -49,8 +49,8 @@
- 7.0.0-beta.24171.2
- 7.0.0-beta.24171.2
+ 7.0.0-beta.24171.6
+ 7.0.0-beta.24171.6
diff --git a/eng/common/templates-official/variables/pool-providers.yml b/eng/common/templates-official/variables/pool-providers.yml
new file mode 100644
index 00000000000..beab7d1bfba
--- /dev/null
+++ b/eng/common/templates-official/variables/pool-providers.yml
@@ -0,0 +1,45 @@
+# Select a pool provider based off branch name. Anything with branch name containing 'release' must go into an -Svc pool,
+# otherwise it should go into the "normal" pools. This separates out the queueing and billing of released branches.
+
+# Motivation:
+# Once a given branch of a repository's output has been officially "shipped" once, it is then considered to be COGS
+# (Cost of goods sold) and should be moved to a servicing pool provider. This allows both separation of queueing
+# (allowing release builds and main PR builds to not intefere with each other) and billing (required for COGS.
+# Additionally, the pool provider name itself may be subject to change when the .NET Core Engineering Services
+# team needs to move resources around and create new and potentially differently-named pools. Using this template
+# file from an Arcade-ified repo helps guard against both having to update one's release/* branches and renaming.
+
+# How to use:
+# This yaml assumes your shipped product branches use the naming convention "release/..." (which many do).
+# If we find alternate naming conventions in broad usage it can be added to the condition below.
+#
+# First, import the template in an arcade-ified repo to pick up the variables, e.g.:
+#
+# variables:
+# - template: /eng/common/templates-official/variables/pool-providers.yml
+#
+# ... then anywhere specifying the pool provider use the runtime variables,
+# $(DncEngInternalBuildPool)
+#
+# pool:
+# name: $(DncEngInternalBuildPool)
+# image: 1es-windows-2022-pt
+
+variables:
+ # Coalesce the target and source branches so we know when a PR targets a release branch
+ # If these variables are somehow missing, fall back to main (tends to have more capacity)
+
+ # Any new -Svc alternative pools should have variables added here to allow for splitting work
+
+ - name: DncEngInternalBuildPool
+ value: $[
+ replace(
+ replace(
+ eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'),
+ True,
+ 'NetCore1ESPool-Svc-Internal'
+ ),
+ False,
+ 'NetCore1ESPool-Internal'
+ )
+ ]
\ No newline at end of file
diff --git a/global.json b/global.json
index 9ceaf7e6236..694d70127db 100644
--- a/global.json
+++ b/global.json
@@ -12,8 +12,8 @@
}
},
"msbuild-sdks": {
- "Microsoft.DotNet.Arcade.Sdk": "7.0.0-beta.24171.2",
- "Microsoft.DotNet.Helix.Sdk": "7.0.0-beta.24171.2"
+ "Microsoft.DotNet.Arcade.Sdk": "7.0.0-beta.24171.6",
+ "Microsoft.DotNet.Helix.Sdk": "7.0.0-beta.24171.6"
},
"sdk": {
"version": "7.0.117"