Skip to content

Computelimit/trusted host feature shared limit cap - #10178

Open
kellylu2sym wants to merge 3 commits into
Azure:mainfrom
kellylu2sym:computelimit/trusted-host-feature-shared-limit-cap
Open

Computelimit/trusted host feature shared limit cap#10178
kellylu2sym wants to merge 3 commits into
Azure:mainfrom
kellylu2sym:computelimit/trusted-host-feature-shared-limit-cap

Conversation

@kellylu2sym

@kellylu2sym kellylu2sym commented Aug 4, 2026

Copy link
Copy Markdown
Member

🤖 PR Validation — ⚠️ Review suggested

Breaking Changes
⚠️ None
⚠️Azure CLI Extensions Breaking Change Test
⚠️computelimit
rule cmd_name rule_message suggest_message
⚠️ 1011 - SubgroupAdd computelimit feature sub group computelimit feature added
⚠️ 1011 - SubgroupAdd computelimit shared-limit-cap sub group computelimit shared-limit-cap added
⚠️ 1011 - SubgroupAdd computelimit trusted-host-subscription sub group computelimit trusted-host-subscription added

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

Related command

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.

Xiaodi Lu (SHE/HER) added 3 commits August 3, 2026 12:22
Add `az computelimit trusted-host-subscription` command group with add, list, remove and show commands (API version 2026-07-31), generated via aaz-dev and aligned with the existing guest-subscription/shared-limit naming convention (add/list/remove/show, no update).

Includes record-only scenario tests and negative/validation tests, and bumps the extension version to 1.1.0.
Add `az computelimit feature` (list, show, enable, disable) and `az computelimit shared-limit-cap` (add, remove, show, list, set-member-cap-override) with nested `member-cap-override` (add, remove, show, list) commands for API version 2026-07-31, generated via aaz-dev. Includes examples, record-only tests with recordings, and negative tests. Bumps version to 1.2.0.
Copilot AI review requested due to automatic review settings August 4, 2026 00:28
@azure-client-tools-bot-prd

Copy link
Copy Markdown

Hi @kellylu2sym,
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.

@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 4, 2026

Copy link
Copy Markdown
Member

/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

This PR updates the computelimit Azure CLI extension to ship new management-plane command groups for trusted host subscriptions, compute limit features, and shared limit caps (including member cap overrides), along with scenario tests and recordings to validate the new commands. It also bumps the extension version and updates release history to reflect the added capabilities.

Changes:

  • Bump computelimit extension version to 1.2.0 and update HISTORY.rst.
  • Add generated AAZ command implementations for trusted-host-subscription, feature, shared-limit-cap, and shared-limit-cap member-cap-override.
  • Add scenario tests and recordings for the new commands.

Reviewed changes

Copilot reviewed 46 out of 46 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
src/computelimit/setup.py Bumps extension package version to 1.2.0.
src/computelimit/HISTORY.rst Adds release notes entries for new command groups.
src/computelimit/azext_computelimit/tests/latest/test_computelimit.py Adds scenario + validation tests for new command groups.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_trusted_host_subscription_show.yaml Adds playback recording for trusted-host-subscription show.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_trusted_host_subscription_remove.yaml Adds playback recording for trusted-host-subscription remove.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_trusted_host_subscription_list.yaml Adds playback recording for trusted-host-subscription list.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_trusted_host_subscription_crud.yaml Adds playback recording for trusted-host-subscription CRUD flow.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_trusted_host_subscription_add.yaml Adds playback recording for trusted-host-subscription add.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_shared_limit_cap_show.yaml Adds playback recording for shared-limit-cap show.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_shared_limit_cap_set_member_cap_override.yaml Adds playback recording for set-member-cap-override operation.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_shared_limit_cap_remove.yaml Adds playback recording for shared-limit-cap remove.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_shared_limit_cap_list.yaml Adds playback recording for shared-limit-cap list.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_shared_limit_cap_add.yaml Adds playback recording for shared-limit-cap add.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_member_cap_override_show.yaml Adds playback recording for member-cap-override show.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_member_cap_override_remove.yaml Adds playback recording for member-cap-override remove.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_member_cap_override_list.yaml Adds playback recording for member-cap-override list.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_member_cap_override_add.yaml Adds playback recording for member-cap-override add.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_feature_show.yaml Adds playback recording for feature show.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_feature_list.yaml Adds playback recording for feature list.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_feature_enable.yaml Adds playback recording for feature enable.
src/computelimit/azext_computelimit/tests/latest/recordings/test_computelimit_feature_disable.yaml Adds playback recording for feature disable.
src/computelimit/azext_computelimit/aaz/latest/computelimit/trusted_host_subscription/_show.py Adds AAZ implementation for trusted-host-subscription show.
src/computelimit/azext_computelimit/aaz/latest/computelimit/trusted_host_subscription/_remove.py Adds AAZ implementation for trusted-host-subscription remove.
src/computelimit/azext_computelimit/aaz/latest/computelimit/trusted_host_subscription/_list.py Adds AAZ implementation for trusted-host-subscription list.
src/computelimit/azext_computelimit/aaz/latest/computelimit/trusted_host_subscription/_add.py Adds AAZ implementation for trusted-host-subscription add.
src/computelimit/azext_computelimit/aaz/latest/computelimit/trusted_host_subscription/init.py Exposes trusted-host-subscription commands from module.
src/computelimit/azext_computelimit/aaz/latest/computelimit/trusted_host_subscription/__cmd_group.py Registers trusted-host-subscription command group.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/member_cap_override/_show.py Adds AAZ implementation for member-cap-override show.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/member_cap_override/_remove.py Adds AAZ implementation for member-cap-override remove.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/member_cap_override/_list.py Adds AAZ implementation for member-cap-override list.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/member_cap_override/_add.py Adds AAZ implementation for member-cap-override add.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/member_cap_override/init.py Exposes member-cap-override commands from module.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/member_cap_override/__cmd_group.py Registers member-cap-override nested command group.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/_show.py Adds AAZ implementation for shared-limit-cap show.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/_set_member_cap_override.py Adds AAZ implementation for set-member-cap-override operation.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/_remove.py Adds AAZ implementation for shared-limit-cap remove.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/_list.py Adds AAZ implementation for shared-limit-cap list.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/_add.py Adds AAZ implementation for shared-limit-cap add.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/init.py Exposes shared-limit-cap commands from module.
src/computelimit/azext_computelimit/aaz/latest/computelimit/shared_limit_cap/__cmd_group.py Registers shared-limit-cap command group.
src/computelimit/azext_computelimit/aaz/latest/computelimit/feature/_show.py Adds AAZ implementation for feature show.
src/computelimit/azext_computelimit/aaz/latest/computelimit/feature/_list.py Adds AAZ implementation for feature list.
src/computelimit/azext_computelimit/aaz/latest/computelimit/feature/_enable.py Adds AAZ implementation for feature enable.
src/computelimit/azext_computelimit/aaz/latest/computelimit/feature/_disable.py Adds AAZ implementation for feature disable.
src/computelimit/azext_computelimit/aaz/latest/computelimit/feature/init.py Exposes feature commands from module.
src/computelimit/azext_computelimit/aaz/latest/computelimit/feature/__cmd_group.py Registers feature command group.

supplying an empty array clears all existing overrides.

:example: Replace the full set of per-member cap overrides
az computelimit shared-limit-cap set-member-cap-override --location eastus --vm-family-name standardDSv3Family --member-cap-overrides "[{subscription-id:33333333-3333-3333-3333-333333333333,cap:10}]"
Comment on lines +73 to +80
_args_schema.cap = AAZIntArg(
options=["--cap"],
arg_group="Properties",
help="The cap value in count units for this member subscription.",
fmt=AAZIntArgFormat(
minimum=0,
),
)
Comment on lines +72 to +76
_args_schema.is_bounded_cap = AAZBoolArg(
options=["--is-bounded-cap"],
arg_group="Properties",
help="Controls whether the service validates the aggregate cap against the group limit for the VM family. SUM(caps) is the sum of all per-member overrides' cap values plus `defaultMemberCap` multiplied by the number of member subscriptions without an override. When true, the service rejects any configuration where SUM(caps) exceeds the group limit. When false, SUM(caps) is permitted to exceed the group limit. Enabling this flag is rejected if the current configuration already breaches the group limit; reduce caps first, then enable.",
)
Comment on lines +559 to +567
self.kwargs.update({
'location': 'eastus',
'vm_family': 'standardDSv3Family',
'overrides': '[{subscription-id:33333333-3333-3333-3333-333333333333,cap:10}]'
})
self.cmd(
'az computelimit shared-limit-cap set-member-cap-override --location {location} '
'--vm-family-name {vm_family} --member-cap-overrides "{overrides}"'
)
Comment on lines +218 to +222
_schema_on_200 = cls._schema_on_200
_schema_on_200.member_cap_overrides = AAZListType(
serialized_name="memberCapOverrides",
flags={"required": True},
)
Comment on lines +6 to +13
1.2.0
++++++
* Add feature commands (list, show, enable, disable).
* Add shared-limit-cap commands (add, remove, show, list, set-member-cap-override) and nested member-cap-override commands (add, remove, show, list).

1.1.0
++++++
* Add trusted-host-subscription commands (add, remove, show, list).
@yonzhan

yonzhan commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

Computelimit

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