From e34644475688fba4980d776d49c3b3a51ac92c99 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Mon, 12 Jan 2026 05:01:41 +0000 Subject: [PATCH 1/8] Update dependencies from https://github.com/dotnet/arcade build 20260109.1 On relative base path root Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SignTool , Microsoft.DotNet.SwaggerGenerator.MSBuild , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitExtensions From Version 11.0.0-beta.25626.7 -> To Version 11.0.0-beta.26059.1 --- eng/Version.Details.xml | 28 ++++++++++++++-------------- eng/Versions.props | 2 +- global.json | 6 +++--- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 42f94e3969..c2bcf6d2a3 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -7,38 +7,38 @@ - + https://github.com/dotnet/arcade - 47888ab45fbdd0e6c0fe5e7f82eb1fe47cd7b7f0 + 367e3ab44812021f59aaf4c7506d5b4569769eec - + https://github.com/dotnet/arcade - 47888ab45fbdd0e6c0fe5e7f82eb1fe47cd7b7f0 + 367e3ab44812021f59aaf4c7506d5b4569769eec - + https://github.com/dotnet/arcade - 47888ab45fbdd0e6c0fe5e7f82eb1fe47cd7b7f0 + 367e3ab44812021f59aaf4c7506d5b4569769eec - + https://github.com/dotnet/arcade - 47888ab45fbdd0e6c0fe5e7f82eb1fe47cd7b7f0 + 367e3ab44812021f59aaf4c7506d5b4569769eec - + https://github.com/dotnet/arcade - 47888ab45fbdd0e6c0fe5e7f82eb1fe47cd7b7f0 + 367e3ab44812021f59aaf4c7506d5b4569769eec - + https://github.com/dotnet/arcade - 47888ab45fbdd0e6c0fe5e7f82eb1fe47cd7b7f0 + 367e3ab44812021f59aaf4c7506d5b4569769eec - + https://github.com/dotnet/arcade - 47888ab45fbdd0e6c0fe5e7f82eb1fe47cd7b7f0 + 367e3ab44812021f59aaf4c7506d5b4569769eec diff --git a/eng/Versions.props b/eng/Versions.props index fb2e1d31c6..63f1eb0dc4 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -98,7 +98,7 @@ 9.0.0-beta.24212.4 5.0.0-preview.5.20278.1 8.0.0-beta.24525.2 - 11.0.0-beta.25626.7 + 11.0.0-beta.26059.1 9.0.4 0.0.6-test 0.0.13-test diff --git a/global.json b/global.json index e51cdece3b..cc204e3c64 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "tools": { - "dotnet": "10.0.100", + "dotnet": "11.0.100-alpha.1.25618.104", "runtimes": { "dotnet": [ "$(DotNetRuntime60Version)", @@ -13,8 +13,8 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.25626.7", - "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.25626.7", + "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26059.1", + "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26059.1", "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.2.0" } From 0ba1d7916bbfe46229f5a4a310e563ff48570371 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Mon, 19 Jan 2026 05:01:57 +0000 Subject: [PATCH 2/8] Update dependencies from https://github.com/dotnet/arcade build 20260117.2 On relative base path root Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SignTool , Microsoft.DotNet.SwaggerGenerator.MSBuild , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitExtensions From Version 11.0.0-beta.25626.7 -> To Version 11.0.0-beta.26067.2 --- eng/Version.Details.xml | 28 +++++++++---------- eng/Versions.props | 2 +- .../job/publish-build-assets.yml | 2 +- .../core-templates/job/source-build.yml | 2 +- .../core-templates/post-build/post-build.yml | 4 +-- .../templates/variables/pool-providers.yml | 2 +- global.json | 6 ++-- 7 files changed, 23 insertions(+), 23 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index c2bcf6d2a3..0ae7dc2607 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -7,38 +7,38 @@ - + https://github.com/dotnet/arcade - 367e3ab44812021f59aaf4c7506d5b4569769eec + b92cc5b406acf996b29a653dd4454b87f1d83c5f - + https://github.com/dotnet/arcade - 367e3ab44812021f59aaf4c7506d5b4569769eec + b92cc5b406acf996b29a653dd4454b87f1d83c5f - + https://github.com/dotnet/arcade - 367e3ab44812021f59aaf4c7506d5b4569769eec + b92cc5b406acf996b29a653dd4454b87f1d83c5f - + https://github.com/dotnet/arcade - 367e3ab44812021f59aaf4c7506d5b4569769eec + b92cc5b406acf996b29a653dd4454b87f1d83c5f - + https://github.com/dotnet/arcade - 367e3ab44812021f59aaf4c7506d5b4569769eec + b92cc5b406acf996b29a653dd4454b87f1d83c5f - + https://github.com/dotnet/arcade - 367e3ab44812021f59aaf4c7506d5b4569769eec + b92cc5b406acf996b29a653dd4454b87f1d83c5f - + https://github.com/dotnet/arcade - 367e3ab44812021f59aaf4c7506d5b4569769eec + b92cc5b406acf996b29a653dd4454b87f1d83c5f diff --git a/eng/Versions.props b/eng/Versions.props index 63f1eb0dc4..d26bff5c82 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -98,7 +98,7 @@ 9.0.0-beta.24212.4 5.0.0-preview.5.20278.1 8.0.0-beta.24525.2 - 11.0.0-beta.26059.1 + 11.0.0-beta.26067.2 9.0.4 0.0.6-test 0.0.13-test diff --git a/eng/common/core-templates/job/publish-build-assets.yml b/eng/common/core-templates/job/publish-build-assets.yml index 8b5c635fe8..c9ee8ffd8f 100644 --- a/eng/common/core-templates/job/publish-build-assets.yml +++ b/eng/common/core-templates/job/publish-build-assets.yml @@ -80,7 +80,7 @@ jobs: # If it's not devdiv, it's dnceng ${{ if ne(variables['System.TeamProject'], 'DevDiv') }}: name: NetCore1ESPool-Publishing-Internal - image: windows.vs2019.amd64 + image: windows.vs2022.amd64 os: windows steps: - ${{ if eq(parameters.is1ESPipeline, '') }}: diff --git a/eng/common/core-templates/job/source-build.yml b/eng/common/core-templates/job/source-build.yml index 9d820f9742..7322e88bea 100644 --- a/eng/common/core-templates/job/source-build.yml +++ b/eng/common/core-templates/job/source-build.yml @@ -63,7 +63,7 @@ jobs: demands: ImageOverride -equals build.ubuntu.2204.amd64 ${{ if eq(variables['System.TeamProject'], 'internal') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore1ESPool-Svc-Internal'), False, 'NetCore1ESPool-Internal')] - image: 1es-azurelinux-3 + image: Azure-Linux-3-Amd64 os: linux ${{ else }}: pool: diff --git a/eng/common/core-templates/post-build/post-build.yml b/eng/common/core-templates/post-build/post-build.yml index 06864cd1fe..3bed9cdb49 100644 --- a/eng/common/core-templates/post-build/post-build.yml +++ b/eng/common/core-templates/post-build/post-build.yml @@ -293,11 +293,11 @@ stages: ${{ else }}: ${{ if eq(parameters.is1ESPipeline, true) }}: name: NetCore1ESPool-Publishing-Internal - image: windows.vs2019.amd64 + image: windows.vs2022.amd64 os: windows ${{ else }}: name: NetCore1ESPool-Publishing-Internal - demands: ImageOverride -equals windows.vs2019.amd64 + demands: ImageOverride -equals windows.vs2022.amd64 steps: - template: /eng/common/core-templates/post-build/setup-maestro-vars.yml parameters: diff --git a/eng/common/templates/variables/pool-providers.yml b/eng/common/templates/variables/pool-providers.yml index e0b19c14a0..18693ea120 100644 --- a/eng/common/templates/variables/pool-providers.yml +++ b/eng/common/templates/variables/pool-providers.yml @@ -23,7 +23,7 @@ # # pool: # name: $(DncEngInternalBuildPool) -# demands: ImageOverride -equals windows.vs2019.amd64 +# demands: ImageOverride -equals windows.vs2022.amd64 variables: - ${{ if eq(variables['System.TeamProject'], 'internal') }}: - template: /eng/common/templates-official/variables/pool-providers.yml diff --git a/global.json b/global.json index cc204e3c64..4f5c38ef24 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "tools": { - "dotnet": "11.0.100-alpha.1.25618.104", + "dotnet": "11.0.100-alpha.1.26060.102", "runtimes": { "dotnet": [ "$(DotNetRuntime60Version)", @@ -13,8 +13,8 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26059.1", - "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26059.1", + "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26067.2", + "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26067.2", "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.2.0" } From a803901a420fff341bd91f346f8634f6548748d7 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Mon, 26 Jan 2026 05:01:55 +0000 Subject: [PATCH 3/8] Update dependencies from https://github.com/dotnet/arcade build 20260123.1 On relative base path root Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SignTool , Microsoft.DotNet.SwaggerGenerator.MSBuild , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitExtensions From Version 11.0.0-beta.25626.7 -> To Version 11.0.0-beta.26073.1 --- eng/Version.Details.xml | 28 +++++++++---------- eng/Versions.props | 2 +- .../core-templates/job/source-build.yml | 6 ++-- global.json | 6 ++-- 4 files changed, 21 insertions(+), 21 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 0ae7dc2607..9e93fd52da 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -7,38 +7,38 @@ - + https://github.com/dotnet/arcade - b92cc5b406acf996b29a653dd4454b87f1d83c5f + 5353d03e27329df35a68fedf3da1fbb26cdd8057 - + https://github.com/dotnet/arcade - b92cc5b406acf996b29a653dd4454b87f1d83c5f + 5353d03e27329df35a68fedf3da1fbb26cdd8057 - + https://github.com/dotnet/arcade - b92cc5b406acf996b29a653dd4454b87f1d83c5f + 5353d03e27329df35a68fedf3da1fbb26cdd8057 - + https://github.com/dotnet/arcade - b92cc5b406acf996b29a653dd4454b87f1d83c5f + 5353d03e27329df35a68fedf3da1fbb26cdd8057 - + https://github.com/dotnet/arcade - b92cc5b406acf996b29a653dd4454b87f1d83c5f + 5353d03e27329df35a68fedf3da1fbb26cdd8057 - + https://github.com/dotnet/arcade - b92cc5b406acf996b29a653dd4454b87f1d83c5f + 5353d03e27329df35a68fedf3da1fbb26cdd8057 - + https://github.com/dotnet/arcade - b92cc5b406acf996b29a653dd4454b87f1d83c5f + 5353d03e27329df35a68fedf3da1fbb26cdd8057 diff --git a/eng/Versions.props b/eng/Versions.props index d26bff5c82..612cc7c7da 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -98,7 +98,7 @@ 9.0.0-beta.24212.4 5.0.0-preview.5.20278.1 8.0.0-beta.24525.2 - 11.0.0-beta.26067.2 + 11.0.0-beta.26073.1 9.0.4 0.0.6-test 0.0.13-test diff --git a/eng/common/core-templates/job/source-build.yml b/eng/common/core-templates/job/source-build.yml index 7322e88bea..4cb769473f 100644 --- a/eng/common/core-templates/job/source-build.yml +++ b/eng/common/core-templates/job/source-build.yml @@ -60,7 +60,7 @@ jobs: pool: ${{ if eq(variables['System.TeamProject'], 'public') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore-Svc-Public' ), False, 'NetCore-Public')] - demands: ImageOverride -equals build.ubuntu.2204.amd64 + demands: ImageOverride -equals Azure-Linux-3-Amd64-Public ${{ if eq(variables['System.TeamProject'], 'internal') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore1ESPool-Svc-Internal'), False, 'NetCore1ESPool-Internal')] image: Azure-Linux-3-Amd64 @@ -69,10 +69,10 @@ jobs: pool: ${{ if eq(variables['System.TeamProject'], 'public') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore-Svc-Public' ), False, 'NetCore-Public')] - demands: ImageOverride -equals Build.Ubuntu.2204.Amd64.Open + demands: ImageOverride -equals Azure-Linux-3-Amd64-Public ${{ if eq(variables['System.TeamProject'], 'internal') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore1ESPool-Svc-Internal'), False, 'NetCore1ESPool-Internal')] - demands: ImageOverride -equals Build.Ubuntu.2204.Amd64 + demands: ImageOverride -equals Azure-Linux-3-Amd64 ${{ if ne(parameters.platform.pool, '') }}: pool: ${{ parameters.platform.pool }} diff --git a/global.json b/global.json index 4f5c38ef24..67cf3765c8 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "tools": { - "dotnet": "11.0.100-alpha.1.26060.102", + "dotnet": "11.0.100-alpha.1.26064.118", "runtimes": { "dotnet": [ "$(DotNetRuntime60Version)", @@ -13,8 +13,8 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26067.2", - "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26067.2", + "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26073.1", + "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26073.1", "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.2.0" } From 0ca2abd69ecb93dddcfe0ad434c4bdca01431fa4 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Mon, 2 Feb 2026 05:02:10 +0000 Subject: [PATCH 4/8] Update dependencies from https://github.com/dotnet/arcade build 20260130.3 On relative base path root Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SignTool , Microsoft.DotNet.SwaggerGenerator.MSBuild , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitExtensions From Version 11.0.0-beta.25626.7 -> To Version 11.0.0-beta.26080.3 --- eng/Version.Details.xml | 28 ++++++++++++++-------------- eng/Versions.props | 2 +- global.json | 6 +++--- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 9e93fd52da..11e8ff5794 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -7,38 +7,38 @@ - + https://github.com/dotnet/arcade - 5353d03e27329df35a68fedf3da1fbb26cdd8057 + b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c - + https://github.com/dotnet/arcade - 5353d03e27329df35a68fedf3da1fbb26cdd8057 + b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c - + https://github.com/dotnet/arcade - 5353d03e27329df35a68fedf3da1fbb26cdd8057 + b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c - + https://github.com/dotnet/arcade - 5353d03e27329df35a68fedf3da1fbb26cdd8057 + b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c - + https://github.com/dotnet/arcade - 5353d03e27329df35a68fedf3da1fbb26cdd8057 + b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c - + https://github.com/dotnet/arcade - 5353d03e27329df35a68fedf3da1fbb26cdd8057 + b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c - + https://github.com/dotnet/arcade - 5353d03e27329df35a68fedf3da1fbb26cdd8057 + b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c diff --git a/eng/Versions.props b/eng/Versions.props index 612cc7c7da..72af12756a 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -98,7 +98,7 @@ 9.0.0-beta.24212.4 5.0.0-preview.5.20278.1 8.0.0-beta.24525.2 - 11.0.0-beta.26073.1 + 11.0.0-beta.26080.3 9.0.4 0.0.6-test 0.0.13-test diff --git a/global.json b/global.json index 67cf3765c8..242018d199 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "tools": { - "dotnet": "11.0.100-alpha.1.26064.118", + "dotnet": "11.0.100-preview.1.26078.121", "runtimes": { "dotnet": [ "$(DotNetRuntime60Version)", @@ -13,8 +13,8 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26073.1", - "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26073.1", + "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26080.3", + "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26080.3", "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.2.0" } From 2abb1869ec523055629de9fa2541ebfe8309d6ce Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Mon, 9 Feb 2026 05:02:35 +0000 Subject: [PATCH 5/8] Update dependencies from https://github.com/dotnet/arcade build 20260206.2 On relative base path root Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SignTool , Microsoft.DotNet.SwaggerGenerator.MSBuild , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitExtensions From Version 11.0.0-beta.25626.7 -> To Version 11.0.0-beta.26106.2 --- eng/Version.Details.xml | 28 +++++++++---------- eng/Versions.props | 2 +- .../core-templates/job/source-build.yml | 8 +++--- eng/common/cross/build-rootfs.sh | 4 +-- eng/common/native/install-dependencies.sh | 9 +++--- global.json | 4 +-- 6 files changed, 27 insertions(+), 28 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 11e8ff5794..ff2a9cd532 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -7,38 +7,38 @@ - + https://github.com/dotnet/arcade - b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c + d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 - + https://github.com/dotnet/arcade - b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c + d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 - + https://github.com/dotnet/arcade - b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c + d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 - + https://github.com/dotnet/arcade - b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c + d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 - + https://github.com/dotnet/arcade - b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c + d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 - + https://github.com/dotnet/arcade - b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c + d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 - + https://github.com/dotnet/arcade - b7be18aa9600f662a6da4b75c1ae2aa0b6ddda1c + d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 diff --git a/eng/Versions.props b/eng/Versions.props index 72af12756a..32385c8d22 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -98,7 +98,7 @@ 9.0.0-beta.24212.4 5.0.0-preview.5.20278.1 8.0.0-beta.24525.2 - 11.0.0-beta.26080.3 + 11.0.0-beta.26106.2 9.0.4 0.0.6-test 0.0.13-test diff --git a/eng/common/core-templates/job/source-build.yml b/eng/common/core-templates/job/source-build.yml index 4cb769473f..1997c2ae00 100644 --- a/eng/common/core-templates/job/source-build.yml +++ b/eng/common/core-templates/job/source-build.yml @@ -60,19 +60,19 @@ jobs: pool: ${{ if eq(variables['System.TeamProject'], 'public') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore-Svc-Public' ), False, 'NetCore-Public')] - demands: ImageOverride -equals Azure-Linux-3-Amd64-Public + demands: ImageOverride -equals build.azurelinux.3.amd64.open ${{ if eq(variables['System.TeamProject'], 'internal') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore1ESPool-Svc-Internal'), False, 'NetCore1ESPool-Internal')] - image: Azure-Linux-3-Amd64 + image: build.azurelinux.3.amd64 os: linux ${{ else }}: pool: ${{ if eq(variables['System.TeamProject'], 'public') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore-Svc-Public' ), False, 'NetCore-Public')] - demands: ImageOverride -equals Azure-Linux-3-Amd64-Public + demands: ImageOverride -equals build.azurelinux.3.amd64.open ${{ if eq(variables['System.TeamProject'], 'internal') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore1ESPool-Svc-Internal'), False, 'NetCore1ESPool-Internal')] - demands: ImageOverride -equals Azure-Linux-3-Amd64 + demands: ImageOverride -equals build.azurelinux.3.amd64 ${{ if ne(parameters.platform.pool, '') }}: pool: ${{ parameters.platform.pool }} diff --git a/eng/common/cross/build-rootfs.sh b/eng/common/cross/build-rootfs.sh index 9b7eede4e5..ef97671fe6 100755 --- a/eng/common/cross/build-rootfs.sh +++ b/eng/common/cross/build-rootfs.sh @@ -295,9 +295,7 @@ while :; do ;; noble) # Ubuntu 24.04 __CodeName=noble - if [[ -z "$__LLDB_Package" ]]; then - __LLDB_Package="liblldb-19-dev" - fi + __LLDB_Package="liblldb-19-dev" ;; stretch) # Debian 9 __CodeName=stretch diff --git a/eng/common/native/install-dependencies.sh b/eng/common/native/install-dependencies.sh index 11f81cbd40..abb47beacf 100755 --- a/eng/common/native/install-dependencies.sh +++ b/eng/common/native/install-dependencies.sh @@ -24,16 +24,16 @@ case "$os" in apt update apt install -y build-essential gettext locales cmake llvm clang lld lldb liblldb-dev libunwind8-dev libicu-dev liblttng-ust-dev \ - libssl-dev libkrb5-dev pigz cpio + libssl-dev libkrb5-dev pigz cpio ninja-build localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 elif [ "$ID" = "fedora" ] || [ "$ID" = "rhel" ] || [ "$ID" = "azurelinux" ] || [ "$ID" = "centos" ]; then pkg_mgr="$(command -v tdnf 2>/dev/null || command -v dnf)" - $pkg_mgr install -y cmake llvm lld lldb clang python curl libicu-devel openssl-devel krb5-devel lttng-ust-devel pigz cpio + $pkg_mgr install -y cmake llvm lld lldb clang python curl libicu-devel openssl-devel krb5-devel lttng-ust-devel pigz cpio ninja-build elif [ "$ID" = "amzn" ]; then - dnf install -y cmake llvm lld lldb clang python libicu-devel openssl-devel krb5-devel lttng-ust-devel pigz cpio + dnf install -y cmake llvm lld lldb clang python libicu-devel openssl-devel krb5-devel lttng-ust-devel pigz cpio ninja-build elif [ "$ID" = "alpine" ]; then - apk add build-base cmake bash curl clang llvm-dev lld lldb krb5-dev lttng-ust-dev icu-dev openssl-dev pigz cpio + apk add build-base cmake bash curl clang llvm-dev lld lldb krb5-dev lttng-ust-dev icu-dev openssl-dev pigz cpio ninja else echo "Unsupported distro. distro: $ID" exit 1 @@ -54,6 +54,7 @@ brew "openssl@3" brew "pkgconf" brew "python3" brew "pigz" +brew "ninja" EOF ;; diff --git a/global.json b/global.json index 242018d199..b34a699920 100644 --- a/global.json +++ b/global.json @@ -13,8 +13,8 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26080.3", - "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26080.3", + "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26106.2", + "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26106.2", "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.2.0" } From 16a92a0933b42d850b0cf7ba6a93236306025200 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Mon, 16 Feb 2026 05:02:11 +0000 Subject: [PATCH 6/8] Update dependencies from https://github.com/dotnet/arcade build 20260213.2 On relative base path root Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SignTool , Microsoft.DotNet.SwaggerGenerator.MSBuild , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitExtensions From Version 11.0.0-beta.25626.7 -> To Version 11.0.0-beta.26113.2 --- eng/Version.Details.xml | 28 ++++++++++++++-------------- eng/Versions.props | 2 +- global.json | 4 ++-- 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index ff2a9cd532..d5e82100f2 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -7,38 +7,38 @@ - + https://github.com/dotnet/arcade - d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 + 96ff8183603cb80dd7ee87b926a11382b643d81f - + https://github.com/dotnet/arcade - d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 + 96ff8183603cb80dd7ee87b926a11382b643d81f - + https://github.com/dotnet/arcade - d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 + 96ff8183603cb80dd7ee87b926a11382b643d81f - + https://github.com/dotnet/arcade - d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 + 96ff8183603cb80dd7ee87b926a11382b643d81f - + https://github.com/dotnet/arcade - d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 + 96ff8183603cb80dd7ee87b926a11382b643d81f - + https://github.com/dotnet/arcade - d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 + 96ff8183603cb80dd7ee87b926a11382b643d81f - + https://github.com/dotnet/arcade - d14cf39ae28f2bbf6ebdfffd5bd192eaac7b1dc8 + 96ff8183603cb80dd7ee87b926a11382b643d81f diff --git a/eng/Versions.props b/eng/Versions.props index 32385c8d22..9e9a0b5b42 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -98,7 +98,7 @@ 9.0.0-beta.24212.4 5.0.0-preview.5.20278.1 8.0.0-beta.24525.2 - 11.0.0-beta.26106.2 + 11.0.0-beta.26113.2 9.0.4 0.0.6-test 0.0.13-test diff --git a/global.json b/global.json index b34a699920..03ed0c0543 100644 --- a/global.json +++ b/global.json @@ -13,8 +13,8 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26106.2", - "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26106.2", + "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26113.2", + "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26113.2", "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.2.0" } From 5ab0e327d4700853da8b4675fea231bdbe02e316 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Mon, 23 Feb 2026 05:02:00 +0000 Subject: [PATCH 7/8] Update dependencies from https://github.com/dotnet/arcade build 20260222.1 On relative base path root Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SignTool , Microsoft.DotNet.SwaggerGenerator.MSBuild , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitExtensions From Version 11.0.0-beta.25626.7 -> To Version 11.0.0-beta.26122.1 --- eng/Version.Details.xml | 28 +++++++++--------- eng/Versions.props | 2 +- eng/common/templates/steps/vmr-sync.yml | 21 -------------- eng/common/templates/vmr-build-pr.yml | 1 + eng/common/tools.ps1 | 10 +++++++ eng/common/tools.sh | 8 +++++- eng/common/vmr-sync.ps1 | 38 +++++++++++++++++++++---- eng/common/vmr-sync.sh | 30 +++++++++++++++---- global.json | 6 ++-- 9 files changed, 93 insertions(+), 51 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index d5e82100f2..c564b2e212 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -7,38 +7,38 @@ - + https://github.com/dotnet/arcade - 96ff8183603cb80dd7ee87b926a11382b643d81f + 88c88084abfa1e379f54933af89e43fa774e323c - + https://github.com/dotnet/arcade - 96ff8183603cb80dd7ee87b926a11382b643d81f + 88c88084abfa1e379f54933af89e43fa774e323c - + https://github.com/dotnet/arcade - 96ff8183603cb80dd7ee87b926a11382b643d81f + 88c88084abfa1e379f54933af89e43fa774e323c - + https://github.com/dotnet/arcade - 96ff8183603cb80dd7ee87b926a11382b643d81f + 88c88084abfa1e379f54933af89e43fa774e323c - + https://github.com/dotnet/arcade - 96ff8183603cb80dd7ee87b926a11382b643d81f + 88c88084abfa1e379f54933af89e43fa774e323c - + https://github.com/dotnet/arcade - 96ff8183603cb80dd7ee87b926a11382b643d81f + 88c88084abfa1e379f54933af89e43fa774e323c - + https://github.com/dotnet/arcade - 96ff8183603cb80dd7ee87b926a11382b643d81f + 88c88084abfa1e379f54933af89e43fa774e323c diff --git a/eng/Versions.props b/eng/Versions.props index 9e9a0b5b42..5b31c97e38 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -98,7 +98,7 @@ 9.0.0-beta.24212.4 5.0.0-preview.5.20278.1 8.0.0-beta.24525.2 - 11.0.0-beta.26113.2 + 11.0.0-beta.26122.1 9.0.4 0.0.6-test 0.0.13-test diff --git a/eng/common/templates/steps/vmr-sync.yml b/eng/common/templates/steps/vmr-sync.yml index 599afb6186..eb619c5026 100644 --- a/eng/common/templates/steps/vmr-sync.yml +++ b/eng/common/templates/steps/vmr-sync.yml @@ -38,27 +38,6 @@ steps: displayName: Label PR commit workingDirectory: $(Agent.BuildDirectory)/repo -- script: | - vmr_sha=$(grep -oP '(?<=Sha=")[^"]*' $(Agent.BuildDirectory)/repo/eng/Version.Details.xml) - echo "##vso[task.setvariable variable=vmr_sha]$vmr_sha" - displayName: Obtain the vmr sha from Version.Details.xml (Unix) - condition: ne(variables['Agent.OS'], 'Windows_NT') - workingDirectory: $(Agent.BuildDirectory)/repo - -- powershell: | - [xml]$xml = Get-Content -Path $(Agent.BuildDirectory)/repo/eng/Version.Details.xml - $vmr_sha = $xml.SelectSingleNode("//Source").Sha - Write-Output "##vso[task.setvariable variable=vmr_sha]$vmr_sha" - displayName: Obtain the vmr sha from Version.Details.xml (Windows) - condition: eq(variables['Agent.OS'], 'Windows_NT') - workingDirectory: $(Agent.BuildDirectory)/repo - -- script: | - git fetch --all - git checkout $(vmr_sha) - displayName: Checkout VMR at correct sha for repo flow - workingDirectory: ${{ parameters.vmrPath }} - - script: | git config --global user.name "dotnet-maestro[bot]" git config --global user.email "dotnet-maestro[bot]@users.noreply.github.com" diff --git a/eng/common/templates/vmr-build-pr.yml b/eng/common/templates/vmr-build-pr.yml index ce3c29a62f..2f3694fa13 100644 --- a/eng/common/templates/vmr-build-pr.yml +++ b/eng/common/templates/vmr-build-pr.yml @@ -34,6 +34,7 @@ resources: type: github name: dotnet/dotnet endpoint: dotnet + ref: refs/heads/main # Set to whatever VMR branch the PR build should insert into stages: - template: /eng/pipelines/templates/stages/vmr-build.yml@vmr diff --git a/eng/common/tools.ps1 b/eng/common/tools.ps1 index f6bde26837..01296ee601 100644 --- a/eng/common/tools.ps1 +++ b/eng/common/tools.ps1 @@ -588,6 +588,11 @@ function LocateVisualStudio([object]$vsRequirements = $null){ return $null } + if ($null -eq $vsInfo -or $vsInfo.Count -eq 0) { + throw "No instance of Visual Studio meeting the requirements specified was found. Requirements: $($args -join ' ')" + return $null + } + # use first matching instance return $vsInfo[0] } @@ -820,6 +825,11 @@ function MSBuild-Core() { $cmdArgs = "$($buildTool.Command) /m /nologo /clp:Summary /v:$verbosity /nr:$nodeReuse /p:ContinuousIntegrationBuild=$ci" + # Add -mt flag for MSBuild multithreaded mode if enabled via environment variable + if ($env:MSBUILD_MT_ENABLED -eq "1") { + $cmdArgs += ' -mt' + } + if ($warnAsError) { $cmdArgs += ' /warnaserror /p:TreatWarningsAsErrors=true' } diff --git a/eng/common/tools.sh b/eng/common/tools.sh index 6c121300ac..edc7b128cf 100755 --- a/eng/common/tools.sh +++ b/eng/common/tools.sh @@ -522,7 +522,13 @@ function MSBuild-Core { } } - RunBuildTool "$_InitializeBuildToolCommand" /m /nologo /clp:Summary /v:$verbosity /nr:$node_reuse $warnaserror_switch /p:TreatWarningsAsErrors=$warn_as_error /p:ContinuousIntegrationBuild=$ci "$@" + # Add -mt flag for MSBuild multithreaded mode if enabled via environment variable + local mt_switch="" + if [[ "${MSBUILD_MT_ENABLED:-}" == "1" ]]; then + mt_switch="-mt" + fi + + RunBuildTool "$_InitializeBuildToolCommand" /m /nologo /clp:Summary /v:$verbosity /nr:$node_reuse $warnaserror_switch $mt_switch /p:TreatWarningsAsErrors=$warn_as_error /p:ContinuousIntegrationBuild=$ci "$@" } function GetDarc { diff --git a/eng/common/vmr-sync.ps1 b/eng/common/vmr-sync.ps1 index 97302f3205..b37992d91c 100644 --- a/eng/common/vmr-sync.ps1 +++ b/eng/common/vmr-sync.ps1 @@ -103,12 +103,20 @@ Set-StrictMode -Version Latest Highlight 'Installing .NET, preparing the tooling..' . .\eng\common\tools.ps1 $dotnetRoot = InitializeDotNetCli -install:$true +$env:DOTNET_ROOT = $dotnetRoot $darc = Get-Darc -$dotnet = "$dotnetRoot\dotnet.exe" Highlight "Starting the synchronization of VMR.." # Synchronize the VMR +$versionDetailsPath = Resolve-Path (Join-Path $PSScriptRoot '..\Version.Details.xml') | Select-Object -ExpandProperty Path +[xml]$versionDetails = Get-Content -Path $versionDetailsPath +$repoName = $versionDetails.SelectSingleNode('//Source').Mapping +if (-not $repoName) { + Fail "Failed to resolve repo mapping from $versionDetailsPath" + exit 1 +} + $darcArgs = ( "vmr", "forwardflow", "--tmp", $tmpDir, @@ -130,9 +138,27 @@ if ($LASTEXITCODE -eq 0) { Highlight "Synchronization succeeded" } else { - Fail "Synchronization of repo to VMR failed!" - Fail "'$vmrDir' is left in its last state (re-run of this script will reset it)." - Fail "Please inspect the logs which contain path to the failing patch file (use -debugOutput to get all the details)." - Fail "Once you make changes to the conflicting VMR patch, commit it locally and re-run this script." - exit 1 + Highlight "Failed to flow code into the local VMR. Falling back to resetting the VMR to match repo contents..." + git -C $vmrDir reset --hard + + $resetArgs = ( + "vmr", "reset", + "${repoName}:HEAD", + "--vmr", $vmrDir, + "--tmp", $tmpDir, + "--additional-remotes", "${repoName}:${repoRoot}" + ) + + & "$darc" $resetArgs + + if ($LASTEXITCODE -eq 0) { + Highlight "Successfully reset the VMR using 'darc vmr reset'" + } + else { + Fail "Synchronization of repo to VMR failed!" + Fail "'$vmrDir' is left in its last state (re-run of this script will reset it)." + Fail "Please inspect the logs which contain path to the failing patch file (use -debugOutput to get all the details)." + Fail "Once you make changes to the conflicting VMR patch, commit it locally and re-run this script." + exit 1 + } } diff --git a/eng/common/vmr-sync.sh b/eng/common/vmr-sync.sh index 44239e331c..198caec59b 100644 --- a/eng/common/vmr-sync.sh +++ b/eng/common/vmr-sync.sh @@ -186,6 +186,13 @@ fi # Synchronize the VMR +version_details_path=$(cd "$scriptroot/.."; pwd -P)/Version.Details.xml +repo_name=$(grep -m 1 ' Date: Mon, 2 Mar 2026 05:02:13 +0000 Subject: [PATCH 8/8] Update dependencies from https://github.com/dotnet/arcade build 20260227.1 On relative base path root Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SignTool , Microsoft.DotNet.SwaggerGenerator.MSBuild , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitExtensions From Version 11.0.0-beta.25626.7 -> To Version 11.0.0-beta.26127.1 --- eng/Version.Details.xml | 28 ++-- eng/Versions.props | 2 +- eng/common/core-templates/job/renovate.yml | 135 ++++++++++++++++++ .../job/source-index-stage1.yml | 4 +- .../core-templates/post-build/post-build.yml | 8 +- eng/common/core-templates/stages/renovate.yml | 86 +++++++++++ eng/common/native/install-dependencies.sh | 2 +- eng/common/renovate.env | 39 +++++ global.json | 4 +- 9 files changed, 284 insertions(+), 24 deletions(-) create mode 100644 eng/common/core-templates/job/renovate.yml create mode 100644 eng/common/core-templates/stages/renovate.yml create mode 100644 eng/common/renovate.env diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index c564b2e212..36d97ec9a8 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -7,38 +7,38 @@ - + https://github.com/dotnet/arcade - 88c88084abfa1e379f54933af89e43fa774e323c + 55c97a45af8fd75bc87e9e4b4f61aef3fead254d - + https://github.com/dotnet/arcade - 88c88084abfa1e379f54933af89e43fa774e323c + 55c97a45af8fd75bc87e9e4b4f61aef3fead254d - + https://github.com/dotnet/arcade - 88c88084abfa1e379f54933af89e43fa774e323c + 55c97a45af8fd75bc87e9e4b4f61aef3fead254d - + https://github.com/dotnet/arcade - 88c88084abfa1e379f54933af89e43fa774e323c + 55c97a45af8fd75bc87e9e4b4f61aef3fead254d - + https://github.com/dotnet/arcade - 88c88084abfa1e379f54933af89e43fa774e323c + 55c97a45af8fd75bc87e9e4b4f61aef3fead254d - + https://github.com/dotnet/arcade - 88c88084abfa1e379f54933af89e43fa774e323c + 55c97a45af8fd75bc87e9e4b4f61aef3fead254d - + https://github.com/dotnet/arcade - 88c88084abfa1e379f54933af89e43fa774e323c + 55c97a45af8fd75bc87e9e4b4f61aef3fead254d diff --git a/eng/Versions.props b/eng/Versions.props index 5b31c97e38..c635dbc899 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -98,7 +98,7 @@ 9.0.0-beta.24212.4 5.0.0-preview.5.20278.1 8.0.0-beta.24525.2 - 11.0.0-beta.26122.1 + 11.0.0-beta.26127.1 9.0.4 0.0.6-test 0.0.13-test diff --git a/eng/common/core-templates/job/renovate.yml b/eng/common/core-templates/job/renovate.yml new file mode 100644 index 0000000000..b662269d5d --- /dev/null +++ b/eng/common/core-templates/job/renovate.yml @@ -0,0 +1,135 @@ +# -------------------------------------------------------------------------------------- +# Renovate Bot Job Template +# -------------------------------------------------------------------------------------- +# This Azure DevOps pipeline job template runs Renovate (https://docs.renovatebot.com/) +# to automatically update dependencies in a GitHub repository. +# +# Renovate scans the repository for dependency files and creates pull requests to update +# outdated dependencies based on the configuration specified in the renovateConfigPath +# parameter. +# +# Usage: +# For each product repo wanting to make use of Renovate, this template is called from +# an internal Azure DevOps pipeline, typically with a schedule trigger, to check for +# and propose dependency updates. +# +# For more info, see https://github.com/dotnet/arcade/blob/main/Documentation/Renovate.md +# -------------------------------------------------------------------------------------- + +parameters: + +# Path to the Renovate configuration file within the repository. +- name: renovateConfigPath + type: string + default: 'eng/renovate.json' + +# GitHub repository to run Renovate against, in the format 'owner/repo'. +# This could technically be any repo but convention is to target the same +# repo that contains the calling pipeline. The Renovate config file would +# be co-located with the pipeline's repo and, in most cases, the config +# file is specific to the repo being targeted. +- name: gitHubRepo + type: string + +# List of base branches to target for Renovate PRs. +# NOTE: The Renovate configuration file is always read from the branch where the +# pipeline is run, NOT from the target branches specified here. If you need different +# configurations for different branches, run the pipeline from each branch separately. +- name: baseBranches + type: object + default: + - main + +# When true, Renovate will run in dry run mode, which previews changes without creating PRs. +# See the 'Run Renovate' step log output for details of what would have been changed. +- name: dryRun + type: boolean + default: false + +# By default, Renovate will not recreate a PR for a given dependency/version pair that was +# previously closed. This allows opting in to always recreating PRs even if they were +# previously closed. +- name: forceRecreatePR + type: boolean + default: false + +# Pool configuration for the job. +- name: pool + type: object + default: + name: NetCore1ESPool-Internal + image: build.azurelinux.3.amd64 + os: linux + +jobs: +- job: Renovate + displayName: Run Renovate + container: RenovateContainer + variables: + - group: dotnet-renovate-bot + # The Renovate version is automatically updated by https://github.com/dotnet/arcade/blob/main/azure-pipelines-renovate.yml. + # Changing the variable name here would require updating the name in https://github.com/dotnet/arcade/blob/main/eng/renovate.json as well. + - name: renovateVersion + value: '42' + - name: dryRunArg + ${{ if eq(parameters.dryRun, true) }}: + value: 'full' + ${{ else }}: + value: '' + - name: recreateWhenArg + ${{ if eq(parameters.forceRecreatePR, true) }}: + value: 'always' + ${{ else }}: + value: '' + pool: ${{ parameters.pool }} + + templateContext: + outputParentDirectory: $(Build.ArtifactStagingDirectory) + outputs: + - output: pipelineArtifact + displayName: Publish Renovate Log + condition: succeededOrFailed() + targetPath: $(Build.ArtifactStagingDirectory) + artifactName: $(Agent.JobName)_Logs_Attempt$(System.JobAttempt) + sbomEnabled: false + + steps: + - checkout: self + fetchDepth: 1 + + - script: renovate-config-validator $(Build.SourcesDirectory)/${{parameters.renovateConfigPath}} + displayName: Validate Renovate config + env: + LOG_LEVEL: info + LOG_FILE_LEVEL: debug + LOG_FILE: $(Build.ArtifactStagingDirectory)/renovate-config-validator.json + + - script: | + . $(Build.SourcesDirectory)/eng/common/renovate.env + renovate + displayName: Run Renovate + env: + RENOVATE_FORK_TOKEN: $(BotAccount-dotnet-renovate-bot-PAT) + RENOVATE_TOKEN: $(BotAccount-dotnet-renovate-bot-PAT) + RENOVATE_REPOSITORIES: ${{parameters.gitHubRepo}} + RENOVATE_BASE_BRANCHES: ${{ convertToJson(parameters.baseBranches) }} + RENOVATE_DRY_RUN: $(dryRunArg) + RENOVATE_RECREATE_WHEN: $(recreateWhenArg) + LOG_LEVEL: info + LOG_FILE_LEVEL: debug + LOG_FILE: $(Build.ArtifactStagingDirectory)/renovate.json + RENOVATE_CONFIG_FILE: $(Build.SourcesDirectory)/${{parameters.renovateConfigPath}} + + - script: | + echo "PRs created by Renovate:" + if [ -s "$(Build.ArtifactStagingDirectory)/renovate-log.json" ]; then + if ! jq -r 'select(.msg == "PR created" and .pr != null) | "https://github.com/\(.repository)/pull/\(.pr)"' "$(Build.ArtifactStagingDirectory)/renovate-log.json" | sort -u; then + echo "##vso[task.logissue type=warning]Failed to parse Renovate log file with jq." + echo "##vso[task.complete result=SucceededWithIssues]" + fi + else + echo "##vso[task.logissue type=warning]No Renovate log file found or file is empty." + echo "##vso[task.complete result=SucceededWithIssues]" + fi + displayName: List created PRs + condition: and(succeededOrFailed(), eq('${{ parameters.dryRun }}', false)) diff --git a/eng/common/core-templates/job/source-index-stage1.yml b/eng/common/core-templates/job/source-index-stage1.yml index 76baf5c272..cf02b82d4e 100644 --- a/eng/common/core-templates/job/source-index-stage1.yml +++ b/eng/common/core-templates/job/source-index-stage1.yml @@ -25,10 +25,10 @@ jobs: pool: ${{ if eq(variables['System.TeamProject'], 'public') }}: name: $(DncEngPublicBuildPool) - image: windows.vs2026preview.scout.amd64.open + image: windows.vs2026.amd64.open ${{ if eq(variables['System.TeamProject'], 'internal') }}: name: $(DncEngInternalBuildPool) - image: windows.vs2026preview.scout.amd64 + image: windows.vs2026.amd64 steps: - ${{ if eq(parameters.is1ESPipeline, '') }}: diff --git a/eng/common/core-templates/post-build/post-build.yml b/eng/common/core-templates/post-build/post-build.yml index 3bed9cdb49..9438429ca3 100644 --- a/eng/common/core-templates/post-build/post-build.yml +++ b/eng/common/core-templates/post-build/post-build.yml @@ -127,11 +127,11 @@ stages: ${{ else }}: ${{ if eq(parameters.is1ESPipeline, true) }}: name: $(DncEngInternalBuildPool) - image: windows.vs2026preview.scout.amd64 + image: windows.vs2026.amd64 os: windows ${{ else }}: name: $(DncEngInternalBuildPool) - demands: ImageOverride -equals windows.vs2026preview.scout.amd64 + demands: ImageOverride -equals windows.vs2026.amd64 steps: - template: /eng/common/core-templates/post-build/setup-maestro-vars.yml @@ -175,7 +175,7 @@ stages: os: windows ${{ else }}: name: $(DncEngInternalBuildPool) - demands: ImageOverride -equals windows.vs2026preview.scout.amd64 + demands: ImageOverride -equals windows.vs2026.amd64 steps: - template: /eng/common/core-templates/post-build/setup-maestro-vars.yml parameters: @@ -236,7 +236,7 @@ stages: os: windows ${{ else }}: name: $(DncEngInternalBuildPool) - demands: ImageOverride -equals windows.vs2026preview.scout.amd64 + demands: ImageOverride -equals windows.vs2026.amd64 steps: - template: /eng/common/core-templates/post-build/setup-maestro-vars.yml parameters: diff --git a/eng/common/core-templates/stages/renovate.yml b/eng/common/core-templates/stages/renovate.yml new file mode 100644 index 0000000000..383e397e5d --- /dev/null +++ b/eng/common/core-templates/stages/renovate.yml @@ -0,0 +1,86 @@ +# -------------------------------------------------------------------------------------- +# Renovate Pipeline Template +# -------------------------------------------------------------------------------------- +# This template provides a complete reusable pipeline definition for running Renovate +# in a 1ES Official pipeline. Pipelines can extend from this template and only need +# to pass the Renovate job parameters. +# +# For more info, see https://github.com/dotnet/arcade/blob/main/Documentation/Renovate.md +# -------------------------------------------------------------------------------------- + +parameters: + +# Path to the Renovate configuration file within the repository. +- name: renovateConfigPath + type: string + default: 'eng/renovate.json' + +# GitHub repository to run Renovate against, in the format 'owner/repo'. +- name: gitHubRepo + type: string + +# List of base branches to target for Renovate PRs. +- name: baseBranches + type: object + default: + - main + +# When true, Renovate will run in dry run mode. +- name: dryRun + type: boolean + default: false + +# When true, Renovate will recreate PRs even if they were previously closed. +- name: forceRecreatePR + type: boolean + default: false + +# Pool configuration for the pipeline. +- name: pool + type: object + default: + name: NetCore1ESPool-Internal + image: build.azurelinux.3.amd64 + os: linux + +# Renovate version used in the container image tag. +- name: renovateVersion + default: 43 + type: number + +# Pool configuration for SDL analysis. +- name: sdlPool + type: object + default: + name: NetCore1ESPool-Internal + image: 1es-windows-2022 + os: windows + +resources: + repositories: + - repository: 1ESPipelineTemplates + type: git + name: 1ESPipelineTemplates/1ESPipelineTemplates + ref: refs/tags/release + +extends: + template: v1/1ES.Official.PipelineTemplate.yml@1ESPipelineTemplates + parameters: + pool: ${{ parameters.pool }} + sdl: + sourceAnalysisPool: ${{ parameters.sdlPool }} + containers: + RenovateContainer: + image: mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-renovate-${{ parameters.renovateVersion }}-amd64 + stages: + - stage: Renovate + displayName: Run Renovate + jobs: + - template: /eng/common/core-templates/job/renovate.yml@self + parameters: + renovateConfigPath: ${{ parameters.renovateConfigPath }} + gitHubRepo: ${{ parameters.gitHubRepo }} + baseBranches: ${{ parameters.baseBranches }} + dryRun: ${{ parameters.dryRun }} + forceRecreatePR: ${{ parameters.forceRecreatePR }} + pool: ${{ parameters.pool }} diff --git a/eng/common/native/install-dependencies.sh b/eng/common/native/install-dependencies.sh index abb47beacf..4742177a76 100755 --- a/eng/common/native/install-dependencies.sh +++ b/eng/common/native/install-dependencies.sh @@ -33,7 +33,7 @@ case "$os" in elif [ "$ID" = "amzn" ]; then dnf install -y cmake llvm lld lldb clang python libicu-devel openssl-devel krb5-devel lttng-ust-devel pigz cpio ninja-build elif [ "$ID" = "alpine" ]; then - apk add build-base cmake bash curl clang llvm-dev lld lldb krb5-dev lttng-ust-dev icu-dev openssl-dev pigz cpio ninja + apk add build-base cmake bash curl clang llvm llvm-dev lld lldb-dev krb5-dev lttng-ust-dev icu-dev openssl-dev pigz cpio ninja else echo "Unsupported distro. distro: $ID" exit 1 diff --git a/eng/common/renovate.env b/eng/common/renovate.env new file mode 100644 index 0000000000..9f79dbc6b5 --- /dev/null +++ b/eng/common/renovate.env @@ -0,0 +1,39 @@ +# Renovate Global Configuration +# https://docs.renovatebot.com/self-hosted-configuration/ +# +# NOTE: This file uses bash/shell format and is sourced via `. renovate.env`. +# Values containing spaces or special characters must be quoted. + +# Author to use for git commits made by Renovate +# https://docs.renovatebot.com/configuration-options/#gitauthor +export RENOVATE_GIT_AUTHOR='.NET Renovate ' + +# Disable rate limiting for PR creation (0 = unlimited) +# https://docs.renovatebot.com/presets-default/#prhourlylimitnone +# https://docs.renovatebot.com/presets-default/#prconcurrentlimitnone +export RENOVATE_PR_HOURLY_LIMIT=0 +export RENOVATE_PR_CONCURRENT_LIMIT=0 + +# Skip the onboarding PR that Renovate normally creates for new repos +# https://docs.renovatebot.com/config-overview/#onboarding +export RENOVATE_ONBOARDING=false + +# Any Renovate config file in the cloned repository is ignored. Only +# the Renovate config file from the repo where the pipeline is running +# is used (yes, those are the same repo but the sources may be different). +# https://docs.renovatebot.com/self-hosted-configuration/#requireconfig +export RENOVATE_REQUIRE_CONFIG=ignored + +# Customize the PR body content. This removes some of the default +# sections that aren't relevant in a self-hosted config. +# https://docs.renovatebot.com/configuration-options/#prheader +# https://docs.renovatebot.com/configuration-options/#prbodynotes +# https://docs.renovatebot.com/configuration-options/#prbodytemplate +export RENOVATE_PR_HEADER='## Automated Dependency Update' +export RENOVATE_PR_BODY_NOTES='["This PR has been created automatically by the [.NET Renovate Bot](https://github.com/dotnet/arcade/blob/main/Documentation/Renovate.md) to update one or more dependencies in your repo. Please review the changes and merge the PR if everything looks good."]' +export RENOVATE_PR_BODY_TEMPLATE='{{{header}}}{{{table}}}{{{warnings}}}{{{notes}}}{{{changelogs}}}' + +# Extend the global config with additional presets +# https://docs.renovatebot.com/self-hosted-configuration/#globalextends +# Disable the Dependency Dashboard issue that tracks all updates +export RENOVATE_GLOBAL_EXTENDS='[":disableDependencyDashboard"]' diff --git a/global.json b/global.json index e226b2b1bf..c62350463c 100644 --- a/global.json +++ b/global.json @@ -13,8 +13,8 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26122.1", - "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26122.1", + "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26127.1", + "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26127.1", "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.2.0" }