Conversation
|
Hi krtcodee, |
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
|
Thank you for your contribution krtcodee! We will review the pull request and get back to you soon. |
There was a problem hiding this comment.
🟡 Changes recommended
Recorded command-group coverage is missing, and documentation and command inventory updates remain unresolved.
Get a fresh assessment by requesting another Copilot review.
Pull request overview
Adds a preview az resilience extension for Microsoft.AzureResilienceManagement, targeting API version 2026-09-30-preview.
Changes:
- Adds 87 generated resilience commands and nested resource groups.
- Adds packaging, CLI loading, metadata, help scaffolding, and release history.
- Adds test scaffolding for the new command surface.
File summaries
| File | Summary |
|---|---|
src/resilience/setup.py |
Extension packaging metadata. |
src/resilience/setup.cfg |
Packaging configuration. |
src/resilience/README.md |
Extension documentation; installation, help, and usage guidance remain needed (nit, 1 vote). |
src/resilience/HISTORY.rst |
Release history and command inventory; update needed to match registered commands (nit, 3 votes). |
src/resilience/azext_resilience/tests/latest/test_resilience.py |
Placeholder scenario test; recorded coverage for command groups remains needed (moderate, 2 votes). |
src/resilience/azext_resilience/tests/latest/__init__.py |
Latest test package initializer. |
src/resilience/azext_resilience/tests/__init__.py |
Test package initializer. |
src/resilience/azext_resilience/custom.py |
Custom operation scaffold. |
src/resilience/azext_resilience/commands.py |
Custom command-table hook. |
src/resilience/azext_resilience/azext_metadata.json |
Preview extension metadata and minimum CLI version. |
src/resilience/azext_resilience/aaz/latest/resilience/usage_plan/enrollment/_wait.py |
Enrollment wait command. |
src/resilience/azext_resilience/aaz/latest/resilience/usage_plan/enrollment/_show.py |
Enrollment show command. |
src/resilience/azext_resilience/aaz/latest/resilience/usage_plan/enrollment/_list.py |
Enrollment list command. |
src/resilience/azext_resilience/aaz/latest/resilience/usage_plan/enrollment/_delete.py |
Enrollment delete command. |
src/resilience/azext_resilience/aaz/latest/resilience/usage_plan/enrollment/__init__.py |
Enrollment command imports. |
src/resilience/azext_resilience/aaz/latest/resilience/usage_plan/enrollment/__cmd_group.py |
Registers the enrollment command group. |
src/resilience/azext_resilience/aaz/latest/resilience/usage_plan/_wait.py |
Usage-plan wait command. |
src/resilience/azext_resilience/aaz/latest/resilience/usage_plan/_show.py |
Usage-plan show command. |
src/resilience/azext_resilience/aaz/latest/resilience/usage_plan/_delete.py |
Usage-plan delete command. |
src/resilience/azext_resilience/aaz/latest/resilience/usage_plan/__init__.py |
Usage-plan command imports. |
src/resilience/azext_resilience/aaz/latest/resilience/usage_plan/__cmd_group.py |
Registers the usage-plan command group. |
src/resilience/azext_resilience/aaz/latest/resilience/unified_resilience_item/_show.py |
Unified resilience item show command. |
src/resilience/azext_resilience/aaz/latest/resilience/unified_resilience_item/__init__.py |
Unified resilience item imports. |
src/resilience/azext_resilience/aaz/latest/resilience/unified_resilience_item/__cmd_group.py |
Registers the unified resilience item group. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/recovery_resource/__init__.py |
Recovery-resource imports. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/recovery_resource/__cmd_group.py |
Registers the recovery-resource group. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/recovery_job/recovery_job_resource/__init__.py |
Recovery-job-resource imports. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/recovery_job/recovery_job_resource/__cmd_group.py |
Registers the recovery-job-resource group. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/recovery_job/_retry.py |
Recovery-job retry command. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/recovery_job/__init__.py |
Recovery-job command imports. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/recovery_job/__cmd_group.py |
Registers the recovery-job group. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/identity/__init__.py |
Recovery-plan identity imports. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/identity/__cmd_group.py |
Registers the recovery-plan identity group. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/_test_failover.py |
Test-failover command. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/_test_failover_cleanup.py |
Test-failover cleanup command. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/_reprotect.py |
Recovery-plan reprotect command. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/_finalize.py |
Recovery-plan finalize command. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/_failover.py |
Recovery-plan failover command. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/_failover_commit.py |
Failover-commit command. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/_delete.py |
Recovery-plan delete command. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/_check_readiness.py |
Recovery-plan readiness check command. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/__init__.py |
Recovery-plan command imports. |
src/resilience/azext_resilience/aaz/latest/resilience/recovery_plan/__cmd_group.py |
Registers the recovery-plan group. |
src/resilience/azext_resilience/aaz/latest/resilience/operation_status/_show.py |
Operation-status show command. |
src/resilience/azext_resilience/aaz/latest/resilience/operation_status/__init__.py |
Operation-status imports. |
src/resilience/azext_resilience/aaz/latest/resilience/operation_status/__cmd_group.py |
Registers the operation-status group. |
src/resilience/azext_resilience/aaz/latest/resilience/goal_assignment/goal_resource/__init__.py |
Goal-resource imports. |
src/resilience/azext_resilience/aaz/latest/resilience/goal_assignment/goal_resource/__cmd_group.py |
Registers the goal-resource group. |
src/resilience/azext_resilience/aaz/latest/resilience/goal_assignment/_refresh_goal_resource.py |
Goal-resource refresh command. |
src/resilience/azext_resilience/aaz/latest/resilience/goal_assignment/_recommend_capacity.py |
Capacity recommendation command. |
src/resilience/azext_resilience/aaz/latest/resilience/goal_assignment/_delete.py |
Goal-assignment delete command. |
src/resilience/azext_resilience/aaz/latest/resilience/goal_assignment/__init__.py |
Goal-assignment command imports. |
src/resilience/azext_resilience/aaz/latest/resilience/goal_assignment/__cmd_group.py |
Registers the goal-assignment group. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/identity/__init__.py |
Drill identity imports. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/identity/__cmd_group.py |
Registers the drill identity group. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/drill_run/drill_run_resource/__init__.py |
Drill-run-resource imports. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/drill_run/drill_run_resource/__cmd_group.py |
Registers the drill-run-resource group. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/drill_run/_resume.py |
Drill-run resume command. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/drill_run/_reprotect.py |
Drill-run reprotect command. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/drill_run/_mark_as_complete.py |
Drill-run completion command. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/drill_run/_list_report_download_url.py |
Drill-run report URL command. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/drill_run/_add_note.py |
Drill-run note command. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/drill_run/__init__.py |
Drill-run command imports. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/drill_run/__cmd_group.py |
Registers the drill-run group. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/drill_resource/__init__.py |
Drill-resource imports. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/drill_resource/__cmd_group.py |
Registers the drill-resource group. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/_start.py |
Drill start command. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/_resync_readiness_check.py |
Drill readiness resync command. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/_end.py |
Drill end command. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/_delete.py |
Drill delete command. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/__init__.py |
Drill command imports. |
src/resilience/azext_resilience/aaz/latest/resilience/drill/__cmd_group.py |
Registers the drill group. |
src/resilience/azext_resilience/aaz/latest/resilience/__init__.py |
Resilience command imports. |
src/resilience/azext_resilience/aaz/latest/resilience/__cmd_group.py |
Registers the root resilience group. |
src/resilience/azext_resilience/aaz/latest/__init__.py |
Latest generated AAZ package initializer. |
src/resilience/azext_resilience/aaz/__init__.py |
Generated AAZ package initializer. |
src/resilience/azext_resilience/_params.py |
Generated parameter-loading hook. |
src/resilience/azext_resilience/_help.py |
Generated help definitions. |
src/resilience/azext_resilience/__init__.py |
Extension command loader. |
Review details
Suppressed comments (1)
src/resilience/README.md:5
- This README still contains the generator placeholder and provides no installation, help, or usage guidance for the 87-command extension. Please replace it with at least the standard install/
az resilience --helpinstructions and a link or examples, following the documentation pattern insrc/networkcloud/README.md.
- Files reviewed: 71/137 changed files
- Comments generated: 2
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| class ResilienceScenario(ScenarioTest): | ||
| # TODO: add tests here | ||
| pass |
| * Support for `az resilience drill` commands: create, delete, list, show, update, wait, add-or-update-resource, end, resync-readiness-check, start, validate-for-execution. | ||
| * Support for `az resilience drill drill-run` commands: fail-over, generate-report, list, list-report-download-url, mark-as-complete, reprotect, resume, show. | ||
| * Support for `az resilience drill identity` commands: assign, remove, show. | ||
| * Support for `az resilience goal-assignment` commands: create, delete, list, recommend-capacity, refresh-goal-resource, show, update, update-goal-resource. | ||
| * Support for `az resilience goal-assignment goal-resource` commands: list, show. | ||
| * Support for `az resilience operation-status` commands: show. | ||
| * Support for `az resilience recovery-plan` commands: create, delete, list, show, update, check-readiness, failover, failover-commit, finalize, reprotect, test-failover, test-failover-cleanup, update-resource, validate-for-failover, validate-for-failover-commit, validate-for-operation, validate-for-reprotect, validate-for-test-failover, validate-for-test-failover-cleanup. | ||
| * Support for `az resilience recovery-plan identity` commands: assign, remove, show. | ||
| * Support for `az resilience recovery-plan recovery-job` commands: cancel, list, resume, retry, show. | ||
| * Support for `az resilience unified-resilience-item` commands: list, show. | ||
| * Support for `az resilience usage-plan` commands: create, delete, list, show, update. | ||
| * Support for `az resilience usage-plan enrollment` commands: create, delete, list, show, update. |
|
resilience |
|
/azp run |
|
Commenter does not have sufficient privileges for PR 10339 in repo Azure/azure-cli-extensions |
|
/azp run |
|
Azure Pipelines will not run the associated pipelines, because the pull request was updated after the run command was issued. Review the pull request again and issue a new run command. |
…nt api-version 2026-09-30-preview New extension providing 87 commands across 6 command groups: - resiliency drill, goal-assignment, operation-status, recovery-plan, unified-resilience-item, usage-plan Generated from aaz command models using aaz-dev-tools. Command group renamed from azure-resilience-management to resiliency. Co-authored-by: Azure SRE Agent <noreply@microsoft.com>
a9b8fb0 to
de1eed8
Compare
Co-authored-by: Azure SRE Agent <noreply@microsoft.com>
This checklist is used to make sure that common guidelines for a pull request are followed.
Related command
az resiliencyGeneral Guidelines
azdev style <YOUR_EXT>locally? (pip install azdevrequired)python scripts/ci/test_index.py -qlocally? (pip install wheel==0.30.0required)For new extensions:
About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update
src/index.jsonautomatically.You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify
src/index.json.PR Owner Inputs
AAZ repo PR: Azure/aaz#1090
What
Add new
az resiliencyextension forMicrosoft.AzureResilienceManagement, supporting api-version2026-09-30-preview.Swagger diff (2026-08-31-preview → 2026-09-30-preview)
goalTemplatesgroup (CRUD + list) droppedregionalObjectives(RPO/RTO) on goalAssignments,regionalResiliencyon updateGoalResources,goalAssignmentPropertieson drills,inclusionDisabledReasons&replicationModeon recoveryPlansprotectionSolutionTypeexpanded (CosmosDB, NetAppFiles, ServiceBus, StorageAccount, Template added);planTypereduced to Standard onlyCLI surface (87 commands)
az resiliency drillaz resiliency drill drill-runaz resiliency drill identityaz resiliency goal-assignmentaz resiliency goal-assignment goal-resourceaz resiliency operation-statusaz resiliency recovery-planaz resiliency recovery-plan identityaz resiliency recovery-plan recovery-jobaz resiliency recovery-plan recovery-job recovery-job-resourceaz resiliency recovery-plan recovery-resourceaz resiliency unified-resilience-itemaz resiliency usage-planaz resiliency usage-plan enrollmentBreaking changes
5
goalTemplatesoperations removed in the 2026-09-30-preview spec (the entire resource path was dropped by the service team). No existing CLI commands to break since this is a new extension.Generated with
aaz-dev-tools 4.6.2 from aaz models in Azure/aaz#1090. Files under
azext_resiliency/aaz/are generated — do not hand-edit.Created by Azure SRE Agent: Open thread