Skip to content

Fix the internal 8.0 builds to correctly use the internal feeds to install the workloads - #54242

Merged
marcpopMSFT merged 2 commits into
release/8.0.1xxfrom
marcpopMSFT-fix-overlaysdk-auth
May 11, 2026
Merged

marcpopMSFT merged 2 commits into
release/8.0.1xxfrom
marcpopMSFT-fix-overlaysdk-auth

Conversation

@marcpopMSFT

@marcpopMSFT marcpopMSFT commented May 8, 2026 •

Copy link
Copy Markdown
Member

Fixes #54237

We were getting 401 errors from the feeds when installing the test workloads. After going through the binlog with copilot, this is the solution and this looks right to me.

Test build below is passing the main SDK build on all legs.

https://dev.azure.com/dnceng/internal/_build/results?buildId=2970684&view=logs&j=7a30c6f6-6636-503e-7c63-a02a61cefc9a&t=c608e0de-ddda-52f2-bd6a-8e56778f44b6

marcpopMSFT and others added 2 commits May 8, 2026 15:33
The dotnet workload update subprocess fails with 401 Unauthorized on
internal feeds because DOTNET_CLI_HOME redirection causes NuGet to look
for the credential provider plugin in artifacts/tmp/ instead of the
user profile where it's actually installed.

Fix: Pass NUGET_PLUGIN_PATHS env var pointing to the Azure Artifacts
Credential Provider at its actual location under USERPROFILE, and pass
--configfile pointing to the repo NuGet.config.

Also remove diagnostic logging from previous investigation.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Use HOME on Linux/Mac and USERPROFILE on Windows to locate the
Azure Artifacts Credential Provider. Also use forward slashes for
cross-platform path compatibility.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 8, 2026 22:38

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

Updates the SDK overlay-on-LKG build step to reliably install workload manifests in internal builds by ensuring dotnet workload update runs with the correct NuGet configuration and can locate the Azure Artifacts credential provider even when DOTNET_CLI_HOME is redirected.

Changes:

  • Adds logic to pass NUGET_PLUGIN_PATHS (when the credential provider exists) to the dotnet workload update subprocess.
  • Forces workload update to use the repo NuGet.config via --configfile.
  • Centralizes the environment variables passed to workload update into an item list.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +101 to +103
<_UserHome Condition="'$(USERPROFILE)' != ''">$(USERPROFILE)</_UserHome>
<_UserHome Condition="'$(_UserHome)' == ''">$(HOME)</_UserHome>
<_CredentialProviderPath>$(_UserHome)/.nuget/plugins/netcore/CredentialProvider.Microsoft/CredentialProvider.Microsoft.dll</_CredentialProviderPath>
@marcpopMSFT
marcpopMSFT merged commit 92e1b3f into release/8.0.1xx May 11, 2026
26 checks passed
@marcpopMSFT
marcpopMSFT deleted the marcpopMSFT-fix-overlaysdk-auth branch May 11, 2026 23:03
@dotnet-milestone-bot dotnet-milestone-bot Bot added this to the 11.0-preview6 milestone Jun 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants