Parent epic: #9479
Depends on the Aspire extension becoming the default for new projects.
Objective
Move existing host: containerapp plus language: dotnet Aspire projects onto the extension without breaking old projects or silently rewriting configuration.
Scope
-
Continue recognizing the legacy marker as Aspire only when the referenced project is an AppHost.
-
Prefer the extension for legacy projects once the installed version meets compatibility requirements.
-
Retain built-in fallback during the migration window.
-
Never switch implementations after an operation has started.
-
Add an explicit migration command, for example:
-
Update azure.yaml to host: aspire, remove the obsolete language marker, configure the Aspire provisioning provider, and add extension requirements where needed.
-
Provide preview/confirmation and preserve comments and unrelated configuration where possible.
-
Add regression coverage for old templates, generated projects, CI pipelines, App Service, and Container Apps.
-
Publish migration and rollback guidance.
Exit criteria
- Legacy projects run successfully through the extension without mandatory edits.
- Explicit migration produces the new canonical configuration.
- Built-in fallback usage and extension migration adoption can be measured safely.
Parent epic: #9479
Depends on the Aspire extension becoming the default for new projects.
Objective
Move existing
host: containerapppluslanguage: dotnetAspire projects onto the extension without breaking old projects or silently rewriting configuration.Scope
Continue recognizing the legacy marker as Aspire only when the referenced project is an AppHost.
Prefer the extension for legacy projects once the installed version meets compatibility requirements.
Retain built-in fallback during the migration window.
Never switch implementations after an operation has started.
Add an explicit migration command, for example:
azd aspire migrateUpdate
azure.yamltohost: aspire, remove the obsolete language marker, configure the Aspire provisioning provider, and add extension requirements where needed.Provide preview/confirmation and preserve comments and unrelated configuration where possible.
Add regression coverage for old templates, generated projects, CI pipelines, App Service, and Container Apps.
Publish migration and rollback guidance.
Exit criteria