Skip to content

[Mission] Add mission preview extension (Microsoft.Mission 2026-03-01-preview) - #10149

Open
harshitchoudhary wants to merge 4 commits into
Azure:mainfrom
harshitchoudhary:hachoudhary-microsoft-az-mission-cli-extension
Open

[Mission] Add mission preview extension (Microsoft.Mission 2026-03-01-preview)#10149
harshitchoudhary wants to merge 4 commits into
Azure:mainfrom
harshitchoudhary:hachoudhary-microsoft-az-mission-cli-extension

Conversation

@harshitchoudhary

@harshitchoudhary harshitchoudhary commented Jul 27, 2026

Copy link
Copy Markdown
Member

Related command

az mission


Initial AAZ-generated preview CLI extension for the Microsoft.Mission resource provider (Azure Virtual Enclaves / AVE) at API version 2026-03-01-preview. Generated with the aaz-dev-tools swagger (v2) translator from the pinned REST spec commit 342124d3 — the same spec the sibling PowerShell module used.

What's included

  • New extension at src/mission/, command root az mission.
  • 11 command groups / 72 leaf commands covering all 9 Microsoft.Mission resource types + POST actions + the Operations list:
    • community (+ nested community-endpoint, dedicated-hub, transit-hub, identity)
    • virtual-enclave (+ nested enclave-endpoint, workload, identity)
    • enclave-connection (top-level, RG-scoped)
    • approval (extension resource: /{resourceUri}/providers/Microsoft.Mission/approvals/{approvalName}, with notify-initiator)
    • community check-address-space-availability action retained as generated.
  • azext.isPreview: true, version 1.0.0b1, azext.minCliCoreVersion: 2.75.0.
  • linter_exclusions.yml waives 40 option_length_too_long findings (long generated option names from the spec; accepted repo convention used by ~20 other extensions).

Companion work

Open question for reviewers

The 8× handle-*-approval-creation / handle-*-approval-deletion commands (on community-endpoint, virtual-enclave, enclave-endpoint, enclave-connection) map to the RP-internal approvalCallbackRoute POST operations. They are shipped here for parity with the PowerShell module, but they are not customer-facing. Happy to mark them hidden (or drop them) in the CLI if the CLI team prefers — a regen-safe hide directive is ready and the same cleanup is being coordinated on the sibling PowerShell PR.


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

General Guidelines

  • Have you run azdev style <YOUR_EXT> locally? (pip install azdev required) — azdev style mission ✅ clean
  • Have you run python scripts/ci/test_index.py -q locally? (pip install azdev required) — ✅ OK (9 tests)
  • My extension version conforms to the Extension version schema1.0.0b1 (preview/beta)

For new extensions:

About Extension Publish

setup.py version is 1.0.0b1 and HISTORY.rst is initialized. src/index.json is intentionally not modified — it is updated automatically by the publish pipeline after merge.

aaz command models

The companion aaz command-model contribution for this extension is Azure/aaz#1058 (Microsoft.Mission 2026-03-01-preview). That PR adds the Commands/mission tree and the Resources/mgmt-plane configs these CLI command models are generated from. Sharing it here per review request.

Copilot AI review requested due to automatic review settings July 27, 2026 22:32
@azure-client-tools-bot-prd

Copy link
Copy Markdown

Hi @harshitchoudhary,
Please write the description of changes which can be perceived by customers into HISTORY.rst.
If you want to release a new extension version, please update the version in setup.py as well.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot wasn't able to review this pull request because it exceeds the maximum number of lines (20,000). Try reducing the number of changed lines and requesting a review from Copilot again.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@a0x1ab

a0x1ab commented Jul 27, 2026

Copy link
Copy Markdown
Member

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 2 pipeline(s).

@yonzhan
yonzhan requested a review from necusjz July 27, 2026 22:51
@yonzhan

yonzhan commented Jul 27, 2026

Copy link
Copy Markdown
Collaborator

Mission

@harshitchoudhary
harshitchoudhary force-pushed the hachoudhary-microsoft-az-mission-cli-extension branch from 689a289 to 46f9283 Compare July 27, 2026 22:53
harshitchoudhary and others added 2 commits July 27, 2026 15:54
…-preview)

Add a new AAZ-generated preview CLI extension `az mission` for Azure Virtual
Enclaves (Microsoft.Mission), covering all 9 resource types at api-version
2026-03-01-preview (pinned spec commit 342124d3):

- communities (+ community-endpoint, dedicated-hub, transit-hub children)
- virtual-enclaves (+ enclave-endpoint, workload children)
- enclave-connections (top-level, under resource group)
- approvals (extension resource: /{resourceUri}/.../approvals/{name})
- POST actions: community check-address-space-availability,
  approval notify-initiator, and handle-approval-creation/deletion callbacks

CLI sibling of the shipped Az.Mission PowerShell module (PR #29844).
Generated via aaz-dev (command-model generate-from-swagger + CLI Extension
Generator). Extension marked preview (azext.isPreview). azdev linter, style,
and build all pass; long spec-derived options waived via linter_exclusions.yml.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
The 8 handle-approval-creation/deletion commands (community-endpoint,
enclave-connection, virtual-enclave, enclave-endpoint) are RP-internal
approvalCallbackRoute callbacks, not customer-facing operations. Unregister
them so they no longer appear in `az mission ... --help`.

Done regen-safely via the aaz-dev command model (registered=False on the
command view + update_module regeneration) rather than hand-editing generated
files, so the change survives future aaz-dev codegen. The command classes are
retained (reversible); only the @register_command decorator is omitted.

azdev linter, style, and build remain green.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@a0x1ab

a0x1ab commented Jul 28, 2026

Copy link
Copy Markdown
Member

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 2 pipeline(s).

The azure-cli-extensions CI pipeline (scripts/ci/service_name.py, run as
'azdev style/linter on Modified Extensions') requires every extension's
top-level command group to have an entry in src/service_name.json. AAZ
codegen does not add this entry. Map 'az mission' -> "Azure Virtual
Enclaves" (RP Microsoft.Mission) to satisfy the check.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@a0x1ab

a0x1ab commented Jul 28, 2026

Copy link
Copy Markdown
Member

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 2 pipeline(s).

@VeryEarly VeryEarly assigned VeryEarly and unassigned necusjz Aug 3, 2026
MissionScenario had no test methods, so pytest collected 0 items and azdev returned exit 1, failing the build-test gate on all Python versions (3.10-3.14). Add a no-op offline test_help method (no recordings) matching the durabletask pattern so >=1 test is collected and passes.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@a0x1ab

a0x1ab commented Aug 4, 2026

Copy link
Copy Markdown
Member

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 2 pipeline(s).

@harshitchoudhary

Copy link
Copy Markdown
Member Author

The companion aaz command-model PR is Azure/aaz#1058 (Azure/aaz#1058) — adding per review request. It carries the Commands/mission tree and the Resources/mgmt-plane configs for Microsoft.Mission 2026-03-01-preview that this extension is generated from.

@azure-client-tools-agent

Copy link
Copy Markdown

Automated sensitive-information remediation ran on this pull request.

  • Detected categories: email address
  • Replaced with typed [REDACTED:category] placeholders in: no writable PR fields
  • Could not edit: file changes on a fork branch
  • Comment/review owners notified because Agent Assist cannot edit another user's text: none

If a credential was exposed, rotate or revoke it immediately. Detected values are never copied into this comment.

✅ Keep the redaction · ❌ Dispute the redaction

GitHub only supports a fixed reaction set, so 👍 represents ✅ and 👎 represents ❌. The bot-created reactions are only poll choices.


Posted by agent-assist (autonomous bug-fix pipeline).

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.

6 participants