Skip to content

[Network] az interconnect-group: Add support for managing interconnect groups and subgroups - #10171

Open
huiii99 wants to merge 3 commits into
Azure:mainfrom
huiii99:feat/interconnect-group-support
Open

[Network] az interconnect-group: Add support for managing interconnect groups and subgroups#10171
huiii99 wants to merge 3 commits into
Azure:mainfrom
huiii99:feat/interconnect-group-support

Conversation

@huiii99

@huiii99 huiii99 commented Aug 3, 2026

Copy link
Copy Markdown
Member

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

Related command

az interconnect-group create
az interconnect-group show
az interconnect-group list
az interconnect-group update
az interconnect-group delete
az interconnect-group get-node-availability
az interconnect-group subgroup show
az interconnect-group subgroup list

Description

Closes Azure/azure-cli#33788.
AAZ Azure/aaz#1057

Add the preview interconnect-group extension using Network API version 2025-07-01. The extension supports CRUD operations for interconnect groups, node availability queries, and subgroup list/show operations.

The scenario test uses the supported Standard_ND128isr_NDR_GB200_v6 VM size with subgroup size 18. It also handles synchronous node-availability responses without polling the returned Location URL.

Testing

azdev test test_interconnect_group_crud --live

General Guidelines

  • Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
  • Have you run python scripts/ci/test_index.py -q locally? (pip install azdev required)
  • My extension version conforms to the Extension version schema

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.json automatically.
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.

@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 Aug 3, 2026

Copy link
Copy Markdown
Member

/azp run

@azure-pipelines

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

@a0x1ab

a0x1ab commented Aug 3, 2026

Copy link
Copy Markdown
Member

/azp run

@azure-pipelines

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

@huiii99
huiii99 marked this pull request as ready for review August 3, 2026 02:56
Copilot AI review requested due to automatic review settings August 3, 2026 02:56
@azure-pipelines

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

@huiii99

huiii99 commented Aug 3, 2026

Copy link
Copy Markdown
Member Author

/azp run

@azure-pipelines

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

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.

Pull request overview

Adds a new preview Azure CLI extension (interconnect) that introduces the az interconnect-group command group (and subgroup subcommands) backed by Network API version 2025-07-01, plus a live scenario test and service mapping metadata.

Changes:

  • Introduces AAZ-generated command implementations for interconnect group CRUD, node availability, and subgroup list/show.
  • Adds scenario test + recording for interconnect group CRUD flow.
  • Registers az interconnect-group in src/service_name.json and adds packaging docs/history for the new extension.

Reviewed changes

Copilot reviewed 29 out of 29 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
src/service_name.json Maps az interconnect-group to an Azure service name for reporting/telemetry classification.
src/interconnect/setup.py Python packaging entrypoint for the new interconnect extension.
src/interconnect/setup.cfg Placeholder setup.cfg added for the extension package.
src/interconnect/README.md Usage documentation and examples for az interconnect-group and subgroup commands.
src/interconnect/HISTORY.rst Initial changelog entry for 1.0.0b1.
src/interconnect/azext_interconnect/init.py Extension command loader wiring (AAZ table + conventional hooks).
src/interconnect/azext_interconnect/azext_metadata.json Declares preview status and minimum CLI core version.
src/interconnect/azext_interconnect/_help.py Help registration module stub (imports helps).
src/interconnect/azext_interconnect/_params.py Argument hook stub (currently no custom args).
src/interconnect/azext_interconnect/commands.py Command-table hook stub (AAZ commands loaded separately).
src/interconnect/azext_interconnect/custom.py Custom module stub + logger.
src/interconnect/azext_interconnect/aaz/init.py AAZ package marker for the extension.
src/interconnect/azext_interconnect/aaz/latest/init.py AAZ “latest” version package marker.
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/__cmd_group.py Registers the interconnect-group command group.
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/init.py Exports interconnect-group command implementations.
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/_create.py Implements interconnect-group create.
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/_delete.py Implements interconnect-group delete.
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/_get_node_availability.py Implements interconnect-group get-node-availability (LRO/no-wait).
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/_list.py Implements interconnect-group list (subscription/RG scope).
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/_show.py Implements interconnect-group show.
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/_update.py Implements interconnect-group update (generic update).
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/subgroup/__cmd_group.py Registers the interconnect-group subgroup command group.
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/subgroup/init.py Exports subgroup list/show implementations.
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/subgroup/_list.py Implements interconnect-group subgroup list.
src/interconnect/azext_interconnect/aaz/latest/interconnect_group/subgroup/_show.py Implements interconnect-group subgroup show.
src/interconnect/azext_interconnect/tests/init.py Test package marker.
src/interconnect/azext_interconnect/tests/latest/init.py Latest-tests package marker.
src/interconnect/azext_interconnect/tests/latest/test_interconnect_group.py Scenario test covering create/show/list/update/nodeAvailability/subgroup/delete.
src/interconnect/azext_interconnect/tests/latest/recordings/test_interconnect_group_crud.yaml Live-test recording for playback.
Suppressed comments (1)

src/interconnect/azext_interconnect/aaz/latest/interconnect_group/_create.py:72

  • --subgroup-profile appears to be required for a valid create payload (the request builder marks subgroupProfile as required, and vm-size is required). Mark the --subgroup-profile argument itself as required so users get a clear CLI validation error instead of a server-side failure.
        _args_schema.subgroup_profile = AAZObjectArg(
            options=["--subgroup-profile"],
            arg_group="Properties",
            help="The subgroup profile of the interconnect group resource.",
        )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feature Request: Azure Networking - InterconnectGroup

4 participants