azd adds per-phase concurrency limits
Introduced 2026-09-16 · score 0.98
HOW TO USE IT
When tuning parallel work in an azd project, set the relevant concurrency environment variables for `azd up`, `azd deploy`, or `azd provision`. Configure `AZD_CONCURRENCY_MAX` for the global ceiling; values are clamped to 64, and standalone `azd package` remains sequential.
AZD_PACKAGE_CONCURRENCY=<positive-integer> AZD_PROVISION_CONCURRENCY=<positive-integer> AZD_DEPLOY_CONCURRENCY=<positive-integer> AZD_CONCURRENCY_MAX=<positive-integer> azd upAZD_PACKAGE_CONCURRENCY=<positive-integer> AZD_DEPLOY_CONCURRENCY=<positive-integer> AZD_CONCURRENCY_MAX=<positive-integer> azd deployAZD_PROVISION_CONCURRENCY=<positive-integer> AZD_CONCURRENCY_MAX=<positive-integer> azd provisionWHY THIS HELPS
Tune parallel package, provision, publish, or deploy work when maintaining an azd project.
BEFORE THIS CHANGE
Before graph-driven `up`, `provision`, and `deploy` pipelines, these commands ran each service and each layer sequentially.
REQUIREMENTS AND LIMITATIONS
- Version: 1.34.1
- AZD_CONCURRENCY_MAX: Hard global ceiling; for `azd up`, fallback order is `AZD_UP_CONCURRENCY`, then `AZD_DEPLOY_CONCURRENCY`, then scheduler default. For `azd deploy` and `azd provision`, fallback is the respective command concurrency variable, then scheduler default.
- AZD_PACKAGE_CONCURRENCY: Package phase limit. For `azd up`, fallback is `AZD_UP_CONCURRENCY`; for `azd deploy`, fallback is `AZD_DEPLOY_CONCURRENCY`.
- AZD_PROVISION_CONCURRENCY: Provision phase limit for `azd up`; fallback is `AZD_UP_CONCURRENCY`. It is also the provision phase limit and command-level fallback for `azd provision`.
- AZD_DEPLOY_CONCURRENCY: Shared publish/deploy phase limit. For `azd up`, it is also a global-ceiling fallback and precedes `AZD_UP_CONCURRENCY` for that phase. For `azd deploy`, it is also the global-ceiling and package-limit fallback.
- AZD_UP_CONCURRENCY: Fallback phase limit for package, provision, and publish/deploy under `azd up`; also a global-ceiling fallback after `AZD_CONCURRENCY_MAX`.
- configured concurrency values: Positive integers, clamped to 64. An explicitly set invalid or non-positive value disables that limit and blocks fallback; fallback occurs only when the higher-precedence variable is unset.
- Configured values are positive integers clamped to 64.
- An explicitly set invalid or non-positive value disables that limit and blocks fallback.
- Fallback occurs only when the higher-precedence variable is unset.
- Package and provision work in `azd up` can overlap while retaining independent limits.
- Publish and deploy share one budget because both are part of the deployment phase.
- Standalone `azd package` remains sequential.
FIRST-PARTY EVIDENCE
- https://github.com/Azure/azure-dev/releases/tag/azure-dev-cli_1.34.1
- https://github.com/Azure/azure-dev/pull/9752
- https://github.com/Azure/azure-dev/blob/azure-dev-cli_1.34.1/cli/azd/docs/concurrency-model.md
Check the installed version and the source before using it. Entry JSON