Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Oct 17, 2025

This PR documents a breaking change in Aspire 13.0 where DefaultAzureCredential behavior changes when deploying to Azure Container Apps and Azure App Service.

Background

With dotnet/aspire#11832, Aspire now automatically sets the AZURE_TOKEN_CREDENTIALS environment variable when deploying to Azure Container Apps and Azure App Service. This forces DefaultAzureCredential to only use ManagedIdentityCredential instead of trying the full chain of credential providers (EnvironmentCredential, WorkloadIdentityCredential, then ManagedIdentityCredential).

Changes Made

This PR adds comprehensive documentation for this breaking change:

  • Created docs/compatibility/13.0/ folder structure - New directory for Aspire 13.0 breaking changes
  • Added breaking change document - defaultazurecredential-managedidentity-default.md with:
    • Clear explanation of previous vs. new behavior
    • Rationale based on Azure SDK best practices for deterministic credentials
    • Two recommended workaround options with code examples:
      1. Explicitly use EnvironmentCredential or WorkloadIdentityCredential instead of DefaultAzureCredential
      2. Remove the AZURE_TOKEN_CREDENTIALS environment variable via PublishAsAzureContainerApp or PublishAsAzureAppService callbacks
    • Proper xref links for affected APIs (AddAzureContainerAppEnvironment, AddAzureAppServiceEnvironment)
  • Created index page - docs/compatibility/13.0/index.md for the 13.0 breaking changes
  • Updated TOC - Added Aspire 13.0 section to docs/compatibility/toc.yml

Documentation Quality

  • ✅ Followed all guidelines from .github/prompts/breaking-change.md
  • ✅ Markdown linting passed
  • ✅ Code review completed with no issues
  • ✅ Includes ai-usage: ai-assisted frontmatter as required
  • ✅ Past tense for previous behavior, present tense for new behavior
  • ✅ Links to Azure SDK best practices and related PRs

Fixes #5154

Original prompt

Please create a draft PR to address @dotnet/docs-aspire/issues/5154 - also please rely on the @dotnet/docs-aspire/files/.github/prompts/breaking-change.md prompt to help guide you through the creation of this PR.


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.


Internal previews

📄 File 🔗 Preview link
docs/compatibility/13.0/defaultazurecredential-managedidentity-default.md DefaultAzureCredential defaults to ManagedIdentityCredential on ACA and App Service
docs/compatibility/13.0/index.md Breaking changes in Aspire 13.0
docs/compatibility/toc.yml docs/compatibility/toc

Copilot AI and others added 2 commits October 17, 2025 14:32
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix breaking change issue outlined in issue 5154 Document breaking change: DefaultAzureCredential defaults to ManagedIdentityCredential on ACA and App Service Oct 17, 2025
Copilot AI requested a review from IEvangelist October 17, 2025 14:36
Copilot finished work on behalf of IEvangelist October 17, 2025 14:36
Copy link
Member

@IEvangelist IEvangelist left a comment

Choose a reason for hiding this comment

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

This looks good to me. Let's have @eerhardt verify it too.

@IEvangelist IEvangelist marked this pull request as ready for review October 17, 2025 15:41
Copy link
Member

@eerhardt eerhardt left a comment

Choose a reason for hiding this comment

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

LGTM

@IEvangelist IEvangelist merged commit bea2f8e into release-13 Oct 20, 2025
5 of 6 checks passed
@IEvangelist IEvangelist deleted the copilot/address-breaking-change-issue-5154 branch October 20, 2025 15:14
IEvangelist added a commit that referenced this pull request Nov 11, 2025
* Document ClaimActions configuration for dashboard OpenID Connect authentication (#5192)

* Initial plan

* Document ClaimActions configuration for dashboard OIDC authentication

Co-authored-by: JamesNK <303201+JamesNK@users.noreply.github.com>

* Apply suggestion from @JamesNK

* Apply suggestion from @JamesNK

* Apply suggestion from @JamesNK

* Update configuration.md

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: JamesNK <303201+JamesNK@users.noreply.github.com>
Co-authored-by: James Newton-King <james@newtonking.com>

* Document breaking change: DefaultAzureCredential defaults to ManagedIdentityCredential on ACA and App Service (#5303)

* Initial plan

* Add breaking change documentation for DefaultAzureCredential in 13.0

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Fix markdown linting error - add blank line before list

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Update docs/compatibility/13.0/defaultazurecredential-managedidentity-default.md

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>
Co-authored-by: David Pine <david.pine@microsoft.com>

* Update Azure AI Foundry and GitHub Models documentation to use strongly-typed model constants (#5302)

* Initial plan

* Update documentation to use AIFoundryModel and GitHubModel constants

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Update compatibility matrix to use GitHubModel constant

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Apply suggestions from code review

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>
Co-authored-by: David Pine <david.pine@microsoft.com>

* Update environment variable format to polyglot-friendly pattern (#5320)

* Initial plan

* Update environment variable format to polyglot-friendly pattern

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Update AppHost project documentation for Aspire 13.0 SDK format (#5319)

* Initial plan

* Update AppHost project section to show new SDK format for Aspire 13.0

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Add AddCSharpApp and CSharpAppResource documentation to app-host-overview.md (#5318)

* Initial plan

* Add AddCSharpApp and CSharpAppResource documentation to app-host-overview.md

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Apply suggestions from code review

* Update docs/fundamentals/app-host-overview.md

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>
Co-authored-by: David Pine <david.pine@microsoft.com>

* Add breaking changes documentation for pipeline activity reporter API rename (PR #12137) (#5310)

* Initial plan

* Add breaking changes article for PR #12137 and update documentation

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Fix parameter naming consistency in breaking change examples

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Fix cross reference warnings by using inline code formatting

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>
Co-authored-by: David Pine <david.pine@microsoft.com>

* Add documentation for ASPIREPIPELINES001, ASPIREPIPELINES002, and ASPIREPIPELINES003 diagnostics (#5359)

* Initial plan

* Add documentation for three new pipeline-related diagnostics

Co-authored-by: captainsafia <1857993+captainsafia@users.noreply.github.com>

* Fix ms.date to reflect current date in diagnostic documentation

Co-authored-by: captainsafia <1857993+captainsafia@users.noreply.github.com>

* Update diagnostic codes to use ASPIREPIPELINES001-003 instead of mixed naming scheme

Co-authored-by: captainsafia <1857993+captainsafia@users.noreply.github.com>

* Add ASPIREPIPELINES001-003 diagnostics to TOC

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: captainsafia <1857993+captainsafia@users.noreply.github.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Add Aspire MCP docs (#5446)

* Update configuration

* Document deployment state caching (#5301)

* Initial plan

* Add local deployment state documentation

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Address feedback: Add intros, italicize paths, add CI/CD example

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Rename and relocate deployment state doc outside Azure section

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Clarify cache save behavior in GitHub Actions example

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Add certificate trust customization article for Aspire 13 (#5311)

* Initial plan

* Add certificate trust customization article

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Fix cross-reference title to match actual article title

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Address PR feedback: update API examples, add runtime callout, document default scopes

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Update callback APIs to use async Task and simplified context objects

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Replace deprecated callback APIs with new simplified APIs

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Update documentation for new polyglot environment variables (issue #5308) (#5313)

* Initial plan

* Update documentation with new polyglot environment variable format

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Add clarification about resource names in environment variables

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Improve clarity of note about connection name parameter

Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>

* Update docs/fundamentals/app-host-overview.md

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>
Co-authored-by: David Pine <david.pine@microsoft.com>

* Update documentation for Aspire 13 release

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: build

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: JamesNK <303201+JamesNK@users.noreply.github.com>
Co-authored-by: James Newton-King <james@newtonking.com>
Co-authored-by: IEvangelist <7679720+IEvangelist@users.noreply.github.com>
Co-authored-by: captainsafia <1857993+captainsafia@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
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