Skip to content

[ARM] Deployment Stacks initial 2025-07-01 API version support#32777

Merged
yanzhudd merged 45 commits intoAzure:devfrom
kalbert312:kylea/stacks-2025-07-01
Feb 24, 2026
Merged

[ARM] Deployment Stacks initial 2025-07-01 API version support#32777
yanzhudd merged 45 commits intoAzure:devfrom
kalbert312:kylea/stacks-2025-07-01

Conversation

@kalbert312
Copy link
Member

@kalbert312 kalbert312 commented Feb 11, 2026

Related command
az stack

Description

Bumps the package version of azure-mgmt-resources to 24.0.0 which splits out deployments related resource types into smaller packages. Bumps azure-mgmt-resources-deploymentstacks to 1.0.0 that includes the new 2025-07-01 API version.

The default API version for az stack commands is now 2025-07-01. This API version ships with support for stacks extensible resource management and what-if support. What-if commands will be available in a future AzCLI release.

Extensible resource management only manages and deletes extensible resources that are deployed with extensions that implement the v2 extensibility contract. Microsoft Graph's v1 extension is not supported for this feature, for example. If an older API version is used, extensible resource management is effectively a no-op and will retain any existing management status behind the scenes. This was done to prevent unexpected behavioral changes to users upgrading their AzCLI that may be deploying resources that would be affected by this new feature.

The --resources-without-delete-support parameter modifies the behavior of stacks when trying to delete resources managed by the stack. By default, a stack will enter a failed state if this type of error occurs, but can be set to detach the resource(s) instead.

The --validation-level parameter controls the level of preflight validation performed on a stack. By default, the full validation level Provider is used, but there are a couple of other reduced modes that can be used.

Scaffolding for the upcoming what-if commands is added, but no new commands are added yet.

Testing Guide
See DeploymentStacksTest live tests.

History Notes

[ARM] az stack group/sub/mg create/validate: Add --resources-without-delete-support parameter to support defining what happens to resources that do not support deletion when they are no longer managed by the stack
[ARM] az stack group/sub/mg create/validate: Add --validation-level parameter to support specifying validation level for the deployment stack
[ARM] az stack group/sub/mg delete: Add --resources-without-delete-support parameter to support defining what happens to resources that do not support deletion when they are no longer managed by the stack


This checklist is used to make sure that common guidelines for a pull request are followed.

@azure-client-tools-bot-prd
Copy link

azure-client-tools-bot-prd bot commented Feb 11, 2026

️✔️AzureCLI-FullTest
️✔️acr
️✔️latest
️✔️3.12
️✔️3.13
️✔️acs
️✔️latest
️✔️3.12
️✔️3.13
️✔️advisor
️✔️latest
️✔️3.12
️✔️3.13
️✔️ams
️✔️latest
️✔️3.12
️✔️3.13
️✔️apim
️✔️latest
️✔️3.12
️✔️3.13
️✔️appconfig
️✔️latest
️✔️3.12
️✔️3.13
️✔️appservice
️✔️latest
️✔️3.12
️✔️3.13
️✔️aro
️✔️latest
️✔️3.12
️✔️3.13
️✔️backup
️✔️latest
️✔️3.12
️✔️3.13
️✔️batch
️✔️latest
️✔️3.12
️✔️3.13
️✔️batchai
️✔️latest
️✔️3.12
️✔️3.13
️✔️billing
️✔️latest
️✔️3.12
️✔️3.13
️✔️botservice
️✔️latest
️✔️3.12
️✔️3.13
️✔️cdn
️✔️latest
️✔️3.12
️✔️3.13
️✔️cloud
️✔️latest
️✔️3.12
️✔️3.13
️✔️cognitiveservices
️✔️latest
️✔️3.12
️✔️3.13
️✔️compute_recommender
️✔️latest
️✔️3.12
️✔️3.13
️✔️computefleet
️✔️latest
️✔️3.12
️✔️3.13
️✔️config
️✔️latest
️✔️3.12
️✔️3.13
️✔️configure
️✔️latest
️✔️3.12
️✔️3.13
️✔️consumption
️✔️latest
️✔️3.12
️✔️3.13
️✔️container
️✔️latest
️✔️3.12
️✔️3.13
️✔️containerapp
️✔️latest
️✔️3.12
️✔️3.13
️✔️core
️✔️latest
️✔️3.12
️✔️3.13
️✔️cosmosdb
️✔️latest
️✔️3.12
️✔️3.13
️✔️databoxedge
️✔️latest
️✔️3.12
️✔️3.13
️✔️dls
️✔️latest
️✔️3.12
️✔️3.13
️✔️dms
️✔️latest
️✔️3.12
️✔️3.13
️✔️eventgrid
️✔️latest
️✔️3.12
️✔️3.13
️✔️eventhubs
️✔️latest
️✔️3.12
️✔️3.13
️✔️feedback
️✔️latest
️✔️3.12
️✔️3.13
️✔️find
️✔️latest
️✔️3.12
️✔️3.13
️✔️hdinsight
️✔️latest
️✔️3.12
️✔️3.13
️✔️identity
️✔️latest
️✔️3.12
️✔️3.13
️✔️iot
️✔️latest
️✔️3.12
️✔️3.13
️✔️keyvault
️✔️latest
️✔️3.12
️✔️3.13
️✔️lab
️✔️latest
️✔️3.12
️✔️3.13
️✔️managedservices
️✔️latest
️✔️3.12
️✔️3.13
️✔️maps
️✔️latest
️✔️3.12
️✔️3.13
️✔️marketplaceordering
️✔️latest
️✔️3.12
️✔️3.13
️✔️monitor
️✔️latest
️✔️3.12
️✔️3.13
️✔️mysql
️✔️latest
️✔️3.12
️✔️3.13
️✔️netappfiles
️✔️latest
️✔️3.12
️✔️3.13
️✔️network
️✔️latest
️✔️3.12
️✔️3.13
️✔️policyinsights
️✔️latest
️✔️3.12
️✔️3.13
️✔️postgresql
️✔️latest
️✔️3.12
️✔️3.13
️✔️privatedns
️✔️latest
️✔️3.12
️✔️3.13
️✔️profile
️✔️latest
️✔️3.12
️✔️3.13
️✔️rdbms
️✔️latest
️✔️3.12
️✔️3.13
️✔️redis
️✔️latest
️✔️3.12
️✔️3.13
️✔️relay
️✔️latest
️✔️3.12
️✔️3.13
️✔️resource
️✔️latest
️✔️3.12
️✔️3.13
️✔️role
️✔️latest
️✔️3.12
️✔️3.13
️✔️search
️✔️latest
️✔️3.12
️✔️3.13
️✔️security
️✔️latest
️✔️3.12
️✔️3.13
️✔️servicebus
️✔️latest
️✔️3.12
️✔️3.13
️✔️serviceconnector
️✔️latest
️✔️3.12
️✔️3.13
️✔️servicefabric
️✔️latest
️✔️3.12
️✔️3.13
️✔️signalr
️✔️latest
️✔️3.12
️✔️3.13
️✔️sql
️✔️latest
️✔️3.12
️✔️3.13
️✔️sqlvm
️✔️latest
️✔️3.12
️✔️3.13
️✔️storage
️✔️latest
️✔️3.12
️✔️3.13
️✔️synapse
️✔️latest
️✔️3.12
️✔️3.13
️✔️telemetry
️✔️latest
️✔️3.12
️✔️3.13
️✔️util
️✔️latest
️✔️3.12
️✔️3.13
️✔️vm
️✔️latest
️✔️3.12
️✔️3.13

@azure-client-tools-bot-prd
Copy link

azure-client-tools-bot-prd bot commented Feb 11, 2026

⚠️AzureCLI-BreakingChangeTest
⚠️resource
rule cmd_name rule_message suggest_message
⚠️ 1006 - ParaAdd stack group create cmd stack group create added parameter resources_without_delete_support
⚠️ 1006 - ParaAdd stack group create cmd stack group create added parameter validation_level
⚠️ 1006 - ParaAdd stack group delete cmd stack group delete added parameter resources_without_delete_support
⚠️ 1006 - ParaAdd stack group validate cmd stack group validate added parameter resources_without_delete_support
⚠️ 1006 - ParaAdd stack group validate cmd stack group validate added parameter validation_level
⚠️ 1006 - ParaAdd stack mg create cmd stack mg create added parameter resources_without_delete_support
⚠️ 1006 - ParaAdd stack mg create cmd stack mg create added parameter validation_level
⚠️ 1006 - ParaAdd stack mg delete cmd stack mg delete added parameter resources_without_delete_support
⚠️ 1006 - ParaAdd stack mg validate cmd stack mg validate added parameter resources_without_delete_support
⚠️ 1006 - ParaAdd stack mg validate cmd stack mg validate added parameter validation_level
⚠️ 1006 - ParaAdd stack sub create cmd stack sub create added parameter resources_without_delete_support
⚠️ 1006 - ParaAdd stack sub create cmd stack sub create added parameter validation_level
⚠️ 1006 - ParaAdd stack sub delete cmd stack sub delete added parameter resources_without_delete_support
⚠️ 1006 - ParaAdd stack sub validate cmd stack sub validate added parameter resources_without_delete_support
⚠️ 1006 - ParaAdd stack sub validate cmd stack sub validate added parameter validation_level

@yonzhan
Copy link
Collaborator

yonzhan commented Feb 11, 2026

Thank you for your contribution! We will review the pull request and get back to you soon.

@github-actions
Copy link

The git hooks are available for azure-cli and azure-cli-extensions repos. They could help you run required checks before creating the PR.

Please sync the latest code with latest dev branch (for azure-cli) or main branch (for azure-cli-extensions).
After that please run the following commands to enable git hooks:

pip install azdev --upgrade
azdev setup -c <your azure-cli repo path> -r <your azure-cli-extensions repo path>

Copilot AI review requested due to automatic review settings February 19, 2026 19:00
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the Azure CLI deployment stacks module to support the new 2025-07-01 API version, upgrading from beta to stable packages. The changes introduce new parameters for extensible resource management and validation controls, while maintaining backward compatibility.

Changes:

  • Bumped azure-mgmt-resource to 24.0.0 and azure-mgmt-resource-deploymentstacks to 1.0.0 (stable)
  • Added --resources-without-delete-support and --validation-level parameters to stack commands
  • Refactored code to use direct model imports and new API enums instead of client factory models
  • Scaffolded what-if commands (commented out, not ready for March 2026 release)

Reviewed changes

Copilot reviewed 21 out of 30 changed files in this pull request and generated no comments.

Show a summary per file
File Description
setup.py Updated package versions to stable releases
requirements.py3.*.txt Updated pinned package versions across all platforms
custom.py Major refactoring: removed client factory dependency, updated to use new API models and enums, added what-if command implementations
commands.py Added commented-out what-if command registrations
_params.py Consolidated parameter definitions, added new parameters for extensible resources and validation
_validators.py Added ISO-8601 duration validator for what-if retention intervals
_client_factory.py Added API version parameters to client factories
linter_exclusions.yml Added exclusions for stack commands lacking wait support
test_resource.py Updated tests with new parameters and removed extraneous whitespace
Recording files Updated to reflect new API version responses

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

@kalbert312
Copy link
Member Author

@yanzhudd @zhoxing-ms @jsntcy our team is wanting this to go out for the March release.

@kalbert312
Copy link
Member Author

kalbert312 commented Feb 20, 2026

Hold on merge until this comment is updated. This is OK to merge again (had to fix an issue).

@yanzhudd
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@yanzhudd
Copy link
Contributor

please resolve the ci issues

@kalbert312
Copy link
Member Author

/azp run

@azure-pipelines
Copy link

Commenter does not have sufficient privileges for PR 32777 in repo Azure/azure-cli

@yonzhan
Copy link
Collaborator

yonzhan commented Feb 23, 2026

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@yanzhudd yanzhudd merged commit ed336f3 into Azure:dev Feb 24, 2026
48 checks passed
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.

5 participants