Computelimit/trusted host feature shared limit cap - #10178
Open
kellylu2sym wants to merge 3 commits into
Open
Conversation
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.
|
Hi @kellylu2sym, |
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
Member
|
/azp run |
|
Azure Pipelines: Successfully started running 2 pipeline(s). |
Contributor
There was a problem hiding this comment.
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
computelimitextension version to1.2.0and updateHISTORY.rst. - Add generated AAZ command implementations for
trusted-host-subscription,feature,shared-limit-cap, andshared-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). |
Collaborator
|
Computelimit |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🤖 PR Validation —⚠️ Review suggested
This checklist is used to make sure that common guidelines for a pull request are followed.
Related command
General Guidelines
azdev style <YOUR_EXT>locally? (pip install azdevrequired)python scripts/ci/test_index.py -qlocally? (pip install azdevrequired)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.