Skip to content

Track Microsoft.DotNet.Arcade.Sdk dependency to flow eng/common - #11556

Merged
jonathanpeppers merged 1 commit into
mainfrom
jonathanpeppers/track-arcade-sdk-dependency
Jun 3, 2026
Merged

Track Microsoft.DotNet.Arcade.Sdk dependency to flow eng/common#11556
jonathanpeppers merged 1 commit into
mainfrom
jonathanpeppers/track-arcade-sdk-dependency

Conversation

@jonathanpeppers

Copy link
Copy Markdown
Member

Summary

Adds Microsoft.DotNet.Arcade.Sdk as a tracked dependency in eng/Version.Details.xml and vendors eng/common/ so Maestro can keep both in sync going forward.

Maestro special-cases the Microsoft.DotNet.Arcade.Sdk dependency name: whenever that dependency updates, it also rewrites eng/common/* to match the source commit. The Uri points at https://github.com/dotnet/dotnet (the VMR re-publishes Arcade), so the existing dotnet/dotnet → dotnet/android (main) subscription on the .NET 11.0.1xx SDK channel picks it up — no new subscription required.

Changes

  • eng/Version.Details.xml: add Microsoft.DotNet.Arcade.Sdk under <ToolsetDependencies> (sourced from dotnet/dotnet).
  • global.json: bump msbuild-sdks pin for Microsoft.DotNet.Arcade.Sdk from the very stale 6.0.0-beta.26072.1 to the matching version. From here on it is darc-managed.
  • eng/common/: vendored at the matching Arcade SHA via darc update-dependencies --name Microsoft.DotNet.Arcade.Sdk --channel ".NET 11.0.1xx SDK".

Out of scope

This PR only vendors eng/common. It does not yet:

  • Replace xaprepare's Step_InstallDotNetPreview SDK install logic
  • Wire make prepare / build.sh / CI templates to call eng/common/build.*
  • Touch Configurables.Paths.DotNetPreviewPath or dotnet-local.{cmd,sh}

Those are follow-ups. This is the groundwork so the standard Arcade bootstrap is available to migrate to.

Maestro special-cases the Microsoft.DotNet.Arcade.Sdk dependency name:
whenever that dependency updates, it also rewrites eng/common/* to
match the source commit. The existing dotnet/dotnet -> dotnet/android
(main) subscription on the .NET 11.0.1xx SDK channel will keep this
dep current.

This PR only vendors eng/common; it does not yet replace xaprepare's
SDK install logic. That is groundwork for replacing
Step_InstallDotNetPreview with the standard Arcade bootstrap.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@jonathanpeppers
jonathanpeppers marked this pull request as ready for review June 2, 2026 21:34
Copilot AI review requested due to automatic review settings June 2, 2026 21:34
@jonathanpeppers

Copy link
Copy Markdown
Member Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Tracks Microsoft.DotNet.Arcade.Sdk as a Maestro-managed toolset dependency (sourced from dotnet/dotnet) and vendors the matching eng/common/ content so future Arcade updates can keep the SDK pin and eng/common in sync automatically.

Changes:

  • Add Microsoft.DotNet.Arcade.Sdk to eng/Version.Details.xml toolset dependencies (with dotnet/dotnet URI + SHA).
  • Update global.json msbuild-sdks pin for Microsoft.DotNet.Arcade.Sdk to the matching version.
  • Vendor eng/common/ (Arcade templates/scripts) at the corresponding Arcade SHA.

Reviewed changes

Copilot reviewed 143 out of 143 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
global.json Updates the pinned Microsoft.DotNet.Arcade.Sdk MSBuild SDK version.
eng/Version.Details.xml Adds Microsoft.DotNet.Arcade.Sdk as a tracked toolset dependency (dotnet/dotnet + SHA).
eng/common/vmr-sync.sh Vendored Arcade VMR sync helper (bash).
eng/common/vmr-sync.ps1 Vendored Arcade VMR sync helper (PowerShell).
eng/common/templates/vmr-build-pr.yml Vendored Arcade VMR PR build pipeline template.
eng/common/templates/variables/pool-providers.yml Vendored Arcade pool-selection logic (public vs internal).
eng/common/templates/steps/vmr-sync.yml Vendored Arcade steps to sync repo(s) into the VMR.
eng/common/templates/steps/source-index-stage1-publish.yml Vendored shim to core-templates source-index stage1 publish steps.
eng/common/templates/steps/source-build.yml Vendored shim to core-templates source-build steps.
eng/common/templates/steps/send-to-helix.yml Vendored shim to core-templates helix submission steps.
eng/common/templates/steps/retain-build.yml Vendored shim to core-templates build-retention steps.
eng/common/templates/steps/publish-pipeline-artifacts.yml Vendored non-1ES pipeline artifact publish implementation.
eng/common/templates/steps/publish-logs.yml Vendored shim to core-templates publish-logs steps.
eng/common/templates/steps/publish-build-artifacts.yml Vendored non-1ES build artifacts publish implementation.
eng/common/templates/steps/get-federated-access-token.yml Vendored shim to core-templates federated token acquisition.
eng/common/templates/steps/get-delegation-sas.yml Vendored shim to core-templates delegation SAS acquisition.
eng/common/templates/steps/generate-sbom.yml Vendored shim to core-templates SBOM steps.
eng/common/templates/steps/enable-internal-sources.yml Vendored shim to core-templates internal sources enabling.
eng/common/templates/steps/enable-internal-runtimes.yml Vendored shim to core-templates internal runtime enabling.
eng/common/templates/post-build/setup-maestro-vars.yml Vendored shim to core-templates Maestro var setup.
eng/common/templates/post-build/post-build.yml Vendored shim to core-templates post-build stage template.
eng/common/templates/post-build/common-variables.yml Vendored shim to core-templates post-build variables.
eng/common/templates/jobs/source-build.yml Vendored shim to core-templates source-build jobs.
eng/common/templates/jobs/jobs.yml Vendored shim to core-templates jobs wrapper.
eng/common/templates/job/source-index-stage1.yml Vendored shim to core-templates source-index job.
eng/common/templates/job/source-build.yml Vendored shim to core-templates source-build job.
eng/common/templates/job/publish-build-assets.yml Vendored shim to core-templates publish-build-assets job.
eng/common/templates/job/onelocbuild.yml Vendored shim to core-templates OneLocBuild job.
eng/common/templates/job/job.yml Vendored non-1ES job wrapper (includes artifact publishing logic).
eng/common/templates-official/variables/pool-providers.yml Vendored official/internal pool-selection logic.
eng/common/templates-official/steps/source-index-stage1-publish.yml Vendored official shim to core-templates source-index stage1 publish.
eng/common/templates-official/steps/source-build.yml Vendored official shim to core-templates source-build.
eng/common/templates-official/steps/send-to-helix.yml Vendored official shim to core-templates helix submission.
eng/common/templates-official/steps/retain-build.yml Vendored official shim to core-templates build-retention.
eng/common/templates-official/steps/publish-pipeline-artifacts.yml Vendored 1ES pipeline artifact publish implementation.
eng/common/templates-official/steps/publish-logs.yml Vendored official shim to core-templates publish-logs.
eng/common/templates-official/steps/publish-build-artifacts.yml Vendored 1ES build artifacts publish implementation.
eng/common/templates-official/steps/get-federated-access-token.yml Vendored official shim to core-templates federated token acquisition.
eng/common/templates-official/steps/get-delegation-sas.yml Vendored official shim to core-templates delegation SAS acquisition.
eng/common/templates-official/steps/generate-sbom.yml Vendored official shim to core-templates SBOM steps.
eng/common/templates-official/steps/enable-internal-sources.yml Vendored official shim to core-templates internal sources enabling.
eng/common/templates-official/steps/enable-internal-runtimes.yml Vendored official shim to core-templates internal runtime enabling.
eng/common/templates-official/post-build/setup-maestro-vars.yml Vendored official shim to core-templates Maestro var setup.
eng/common/templates-official/post-build/post-build.yml Vendored official shim to core-templates post-build stage template.
eng/common/templates-official/post-build/common-variables.yml Vendored official shim to core-templates post-build variables.
eng/common/templates-official/jobs/source-build.yml Vendored official shim to core-templates source-build jobs.
eng/common/templates-official/jobs/jobs.yml Vendored official shim to core-templates jobs wrapper.
eng/common/templates-official/job/source-index-stage1.yml Vendored official shim to core-templates source-index job.
eng/common/templates-official/job/source-build.yml Vendored official shim to core-templates source-build job.
eng/common/templates-official/job/publish-build-assets.yml Vendored official shim to core-templates publish-build-assets job.
eng/common/templates-official/job/onelocbuild.yml Vendored official shim to core-templates OneLocBuild job.
eng/common/templates-official/job/job.yml Vendored 1ES job wrapper (templateContext-based publishing).
eng/common/template-guidance.md Vendored guidance for using Arcade templates/shims.
eng/common/SetupNugetSources.ps1 Vendored script to add/enable internal NuGet feeds and credentials.
eng/common/sdk-task.sh Vendored helper to run Arcade SDK tasks (bash).
eng/common/sdk-task.ps1 Vendored helper to run Arcade SDK tasks (PowerShell).
eng/common/retain-build.ps1 Vendored helper to set AzDO build retention.
eng/common/renovate.env Vendored Renovate environment configuration.
eng/common/README.md Vendored notice that eng/common is automation-managed.
eng/common/PSScriptAnalyzerSettings.psd1 Vendored PSScriptAnalyzer rule configuration.
eng/common/post-build/redact-logs.ps1 Vendored binlog/log redaction script.
eng/common/post-build/publish-using-darc.ps1 Vendored post-build promotion/publishing helper via darc.
eng/common/post-build/nuget-verification.ps1 Vendored NuGet package metadata verification helper.
eng/common/post-build/nuget-validation.ps1 Vendored wrapper for NuGet verification over produced packages.
eng/common/post-build/check-channel-consistency.ps1 Vendored validation for Maestro channel vs YAML post-build config.
eng/common/pipeline-logging-functions.sh Vendored bash helpers for AzDO logging commands.
eng/common/native/install-tool.ps1 Vendored native tool installer (Windows).
eng/common/native/install-dependencies.sh Vendored native dependency installer (Linux/macOS).
eng/common/native/install-cmake.sh Vendored CMake installer (Unix).
eng/common/native/install-cmake-test.sh Vendored CMake-test installer (Unix).
eng/common/native/init-os-and-arch.sh Vendored OS/arch detection helper.
eng/common/native/init-distro-rid.sh Vendored distro RID detection helper.
eng/common/native/init-compiler.sh Vendored compiler selection logic.
eng/common/native/common-library.sh Vendored common shell functions for native tool bootstrapping.
eng/common/msbuild.sh Vendored msbuild invocation wrapper (bash).
eng/common/msbuild.ps1 Vendored msbuild invocation wrapper (PowerShell).
eng/common/loc/P22DotNetHtmlLocalization.lss Vendored localization tooling settings file.
eng/common/internal/Tools.csproj Vendored internal toolset project file.
eng/common/internal/NuGet.config Vendored NuGet config for internal tooling restores.
eng/common/internal/Directory.Build.props Vendored props to import Arcade SDK for internal tooling.
eng/common/internal-feed-operations.sh Vendored helper for internal feed auth/credprovider setup (bash).
eng/common/internal-feed-operations.ps1 Vendored helper for internal feed auth/credprovider setup (PowerShell).
eng/common/init-tools-native.cmd Vendored cmd shim for native tools init.
eng/common/helixpublish.proj Vendored Helix publishing project.
eng/common/enable-cross-org-publishing.ps1 Vendored helper to set cross-org publishing variables.
eng/common/dotnet.sh Vendored script to install/invoke .NET SDK (bash).
eng/common/dotnet.ps1 Vendored script to install/invoke .NET SDK (PowerShell).
eng/common/dotnet.cmd Vendored cmd shim to run dotnet.ps1.
eng/common/dotnet-install.sh Vendored dotnet install script (bash wrapper around Arcade tooling).
eng/common/dotnet-install.cmd Vendored cmd shim to run dotnet-install.ps1.
eng/common/darc-init.sh Vendored darc tool bootstrapper (bash).
eng/common/darc-init.ps1 Vendored darc tool bootstrapper (PowerShell).
eng/common/cross/tizen-fetch.sh Vendored Tizen cross-build rootfs fetch helper.
eng/common/cross/tizen-build-rootfs.sh Vendored Tizen cross-build rootfs builder.
eng/common/cross/build-android-rootfs.sh Vendored Android cross-build rootfs builder.
eng/common/core-templates/variables/pool-providers.yml Vendored core-template redirect between official/non-official pool providers.
eng/common/core-templates/steps/source-index-stage1-publish.yml Vendored core-template implementation for stage1 source indexing.
eng/common/core-templates/steps/source-build.yml Vendored core-template implementation for source-build execution.
eng/common/core-templates/steps/send-to-helix.yml Vendored core-template implementation for Helix submission.
eng/common/core-templates/steps/retain-build.yml Vendored core-template implementation for AzDO build retention.
eng/common/core-templates/steps/publish-pipeline-artifacts.yml Vendored core-template redirect for pipeline artifact publishing.
eng/common/core-templates/steps/publish-logs.yml Vendored core-template implementation for log publish/redaction.
eng/common/core-templates/steps/publish-build-artifacts.yml Vendored core-template redirect for build artifact publishing.
eng/common/core-templates/steps/install-microbuild.yml Vendored core-template implementation for MicroBuild plugin installation.
eng/common/core-templates/steps/install-microbuild-impl.yml Vendored core-template implementation detail for MicroBuild install.
eng/common/core-templates/steps/get-federated-access-token.yml Vendored core-template federated token acquisition step.
eng/common/core-templates/steps/get-delegation-sas.yml Vendored core-template delegation SAS acquisition step.
eng/common/core-templates/steps/generate-sbom.yml Vendored core-template deprecation warning for SBOM template include.
eng/common/core-templates/steps/enable-internal-sources.yml Vendored core-template internal feed enabling logic.
eng/common/core-templates/steps/enable-internal-runtimes.yml Vendored core-template internal runtime enabling logic.
eng/common/core-templates/steps/cleanup-microbuild.yml Vendored core-template MicroBuild cleanup step.
eng/common/core-templates/stages/renovate.yml Vendored core-template for Renovate pipeline stage (1ES official).
eng/common/core-templates/post-build/setup-maestro-vars.yml Vendored core-template for Maestro-related variables setup.
eng/common/core-templates/post-build/common-variables.yml Vendored core-template post-build common variables.
eng/common/core-templates/jobs/source-build.yml Vendored core-template for source-build job fan-out.
eng/common/core-templates/jobs/jobs.yml Vendored core-template job wrapper (and source-build/source-index opt-ins).
eng/common/core-templates/job/source-index-stage1.yml Vendored core-template job definition for source-index stage1.
eng/common/core-templates/job/source-build.yml Vendored core-template job definition for source-build.
eng/common/core-templates/job/onelocbuild.yml Vendored core-template job definition for OneLocBuild.
eng/common/cibuild.sh Vendored Arcade CI build wrapper (bash).
eng/common/CIBuild.cmd Vendored Arcade CI build wrapper (cmd).
eng/common/BuildConfiguration/build-configuration.json Vendored build retry configuration.
eng/common/build.cmd Vendored cmd shim for build.ps1.
eng/common/AGENTS.md Vendored note explaining eng/common provenance and overwrite behavior.

Comment thread eng/common/templates/steps/vmr-sync.yml
Comment thread eng/common/internal-feed-operations.sh
Comment thread eng/common/pipeline-logging-functions.sh
Comment thread eng/common/retain-build.ps1
Comment thread eng/common/SetupNugetSources.ps1
@jonathanpeppers jonathanpeppers added the ready-to-review This PR is ready to review/merge, I think any CI failures are just flaky (ignorable). label Jun 3, 2026
@jonathanpeppers
jonathanpeppers merged commit 518b8fd into main Jun 3, 2026
4 checks passed
@jonathanpeppers
jonathanpeppers deleted the jonathanpeppers/track-arcade-sdk-dependency branch June 3, 2026 21:23
@github-actions github-actions Bot locked and limited conversation to collaborators Jul 4, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

ready-to-review This PR is ready to review/merge, I think any CI failures are just flaky (ignorable).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants