From e790af4ed8387bf224876deb27ddc919df4c1885 Mon Sep 17 00:00:00 2001 From: william Date: Thu, 24 Sep 2026 14:09:27 +0800 Subject: [PATCH 1/3] Added missing sig wait arg --- .../vm/operations/sig_share.py | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/src/azure-cli/azure/cli/command_modules/vm/operations/sig_share.py b/src/azure-cli/azure/cli/command_modules/vm/operations/sig_share.py index e0d6844d514..e31801b88d8 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/operations/sig_share.py +++ b/src/azure-cli/azure/cli/command_modules/vm/operations/sig_share.py @@ -207,7 +207,36 @@ class SigShareWait(_SigWait): def _build_arguments_schema(cls, *args, **kwargs): args_schema = super()._build_arguments_schema(*args, **kwargs) args_schema.gallery_name._help['short-summary'] = 'Gallery name.' + + args_schema.expand = AAZStrArg( + options=["--expand"], + help="The expand query option to apply on the operation.", + enum={"SharingProfile/Groups": "SharingProfile/Groups"}, + ) + args_schema.select = AAZStrArg( + options=["--select"], + help="The select expression to apply on the operation.", + enum={"Permissions": "Permissions"}, + ) + args_schema.expand._registered = False args_schema.select._registered = False return args_schema + + class GalleriesGet(_SigWait.GalleriesGet): + @property + def query_parameters(self): + parameters = { + **self.serialize_query_param( + "$expand", self.ctx.args.expand, + ), + **self.serialize_query_param( + "$select", self.ctx.args.select, + ), + **self.serialize_query_param( + "api-version", "2026-03-03", + required=True, + ), + } + return parameters From aeb5e7ece69096c114ca592d0f206ec9b02aa9ad Mon Sep 17 00:00:00 2001 From: william Date: Thu, 24 Sep 2026 15:18:36 +0800 Subject: [PATCH 2/3] Update sig share wait command --- .../azure/cli/command_modules/vm/operations/sig_share.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/azure-cli/azure/cli/command_modules/vm/operations/sig_share.py b/src/azure-cli/azure/cli/command_modules/vm/operations/sig_share.py index e31801b88d8..cd3688df8b5 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/operations/sig_share.py +++ b/src/azure-cli/azure/cli/command_modules/vm/operations/sig_share.py @@ -5,7 +5,7 @@ # pylint: disable=no-self-use, line-too-long, protected-access, too-few-public-methods, unused-argument from knack.log import get_logger -from azure.cli.core.aaz import register_command, AAZListArg, AAZStrArg +from azure.cli.core.aaz import register_command, AAZListArg, AAZStrArg, has_value from azure.cli.core.azclierror import ArgumentUsageError from ..aaz.latest.sig.share import Update as _SigShareUpdate from ..aaz.latest.sig import Wait as _SigWait @@ -203,6 +203,9 @@ class SigShareWait(_SigWait): az sig share wait --updated --resource-group MyResourceGroup --gallery-name Gallery """ + _args_schema = None + _arguments_schema = None + @classmethod def _build_arguments_schema(cls, *args, **kwargs): args_schema = super()._build_arguments_schema(*args, **kwargs) @@ -224,6 +227,10 @@ def _build_arguments_schema(cls, *args, **kwargs): return args_schema + def pre_operations(self): + if not has_value(self.ctx.args.select): + self.ctx.args.select = 'Permissions' + class GalleriesGet(_SigWait.GalleriesGet): @property def query_parameters(self): From 7acecb9919ae3a968c5833e05f561d6ca537d82a Mon Sep 17 00:00:00 2001 From: william Date: Thu, 24 Sep 2026 15:18:53 +0800 Subject: [PATCH 3/3] Add test and recording for this issue --- .../recordings/test_sig_share_wait.yaml | 219 ++++++++++++++++++ .../vm/tests/latest/test_vm_commands.py | 12 +- 2 files changed, 230 insertions(+), 1 deletion(-) create mode 100644 src/azure-cli/azure/cli/command_modules/vm/tests/latest/recordings/test_sig_share_wait.yaml diff --git a/src/azure-cli/azure/cli/command_modules/vm/tests/latest/recordings/test_sig_share_wait.yaml b/src/azure-cli/azure/cli/command_modules/vm/tests/latest/recordings/test_sig_share_wait.yaml new file mode 100644 index 00000000000..dcb428ffacb --- /dev/null +++ b/src/azure-cli/azure/cli/command_modules/vm/tests/latest/recordings/test_sig_share_wait.yaml @@ -0,0 +1,219 @@ +interactions: +- request: + body: '{"location": "westus"}' + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - sig create + Connection: + - keep-alive + Content-Length: + - '22' + Content-Type: + - application/json + ParameterSetName: + - -g -r --location + User-Agent: + - AZURECLI/2.90.0 azsdk-python-core/1.39.0 Python/3.12.10 (Windows-11-10.0.26200-SP0) + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_sig_share_wait_000001/providers/Microsoft.Compute/galleries/gallery000002?api-version=2026-03-03 + response: + body: + string: "{\r\n \"name\": \"gallery000002\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_sig_share_wait_000001/providers/Microsoft.Compute/galleries/gallery000002\",\r\n + \ \"type\": \"Microsoft.Compute/galleries\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"identifier\": {\r\n \"uniqueName\": \"f758ac53-3e63-4317-a956-0997793808d7-GALLERYKI45YWMQ2\"\r\n + \ },\r\n \"provisioningState\": \"Creating\"\r\n }\r\n}" + headers: + azure-asyncnotification: + - Enabled + azure-asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/capsOperations/45743134-37cb-47b4-a201-a78b93fc436e?api-version=2026-03-03&t=639258310601869669&c=MIIHwzCCBqugAwIBAgIQO9vjerLJyzCAZGOG8qnuujANBgkqhkiG9w0BAQsFADA1MTMwMQYDVQQDEypDQ01FIEcxIFRMUyBSU0EgMjA0OCBTSEEyNTYgMjA0OSBDVVMgQ0EgMDEwHhcNMjYwOTE3MTkyNzU0WhcNMjYxMjEzMDEyNzU0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOH7XcOFB9oBlttbwx8AirjT-trX0XvGg-qTsZnfCNKSBKRmEGUNPWfYKFgDpx0AZwfOinDzB58zssD8uZb2jeDqfJuiR1vqsOBWntnOkwx0IgWzw_pbET-L7lO_ZYW2-ec3c5ZewHiy0Jr51TL2zNtCadpjfB2g2RkKJY_5Zgyqgccwx0LvPgj81bdByhSFWtd49llL8NuFYWjo3Fk7HmsitrM-T8Z3xgac37X6nC2PTsQFiO6h917Etzgh-KBeYYfZiOTF9hHnetiX5px_9XecvBma56vHFyzqoF4VpkESo5tWkT_beymCu5gy2ngynn3SNDYyVgZXGrEn4V_OKM0CAwEAAaOCBMIwggS-MIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0OBBYEFLXKU9erjRhgRqjwHfGKduIH8QgZMB8GA1UdIwQYMBaAFPzkWgovhQ7nRLkHc3jg1EQHohkRMIIBygYDVR0fBIIBwTCCAb0wb6BtoGuGaWh0dHA6Ly9wcmltYXJ5LWNkbi5wa2kuY29yZS53aW5kb3dzLm5ldC9jZW50cmFsdXMvY3Jscy9jY21lY2VudHJhbHVzcGtpL2NjbWVjZW50cmFsdXNpY2EwMS84MS9jdXJyZW50LmNybDBxoG-gbYZraHR0cDovL3NlY29uZGFyeS1jZG4ucGtpLmNvcmUud2luZG93cy5uZXQvY2VudHJhbHVzL2NybHMvY2NtZWNlbnRyYWx1c3BraS9jY21lY2VudHJhbHVzaWNhMDEvODEvY3VycmVudC5jcmwwYKBeoFyGWmh0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9jZW50cmFsdXMvY3Jscy9jY21lY2VudHJhbHVzcGtpL2NjbWVjZW50cmFsdXNpY2EwMS84MS9jdXJyZW50LmNybDB1oHOgcYZvaHR0cDovL2NjbWVjZW50cmFsdXNwa2kuY2VudHJhbHVzLnBraS5jb3JlLndpbmRvd3MubmV0L2NlcnRpZmljYXRlQXV0aG9yaXRpZXMvY2NtZWNlbnRyYWx1c2ljYTAxLzgxL2N1cnJlbnQuY3JsMIIBzwYIKwYBBQUHAQEEggHBMIIBvTByBggrBgEFBQcwAoZmaHR0cDovL3ByaW1hcnktY2RuLnBraS5jb3JlLndpbmRvd3MubmV0L2NlbnRyYWx1cy9jYWNlcnRzL2NjbWVjZW50cmFsdXNwa2kvY2NtZWNlbnRyYWx1c2ljYTAxL2NlcnQuY2VyMHQGCCsGAQUFBzAChmhodHRwOi8vc2Vjb25kYXJ5LWNkbi5wa2kuY29yZS53aW5kb3dzLm5ldC9jZW50cmFsdXMvY2FjZXJ0cy9jY21lY2VudHJhbHVzcGtpL2NjbWVjZW50cmFsdXNpY2EwMS9jZXJ0LmNlcjBjBggrBgEFBQcwAoZXaHR0cDovL2NybC5taWNyb3NvZnQuY29tL2NlbnRyYWx1cy9jYWNlcnRzL2NjbWVjZW50cmFsdXNwa2kvY2NtZWNlbnRyYWx1c2ljYTAxL2NlcnQuY2VyMGwGCCsGAQUFBzAChmBodHRwOi8vY2NtZWNlbnRyYWx1c3BraS5jZW50cmFsdXMucGtpLmNvcmUud2luZG93cy5uZXQvY2VydGlmaWNhdGVBdXRob3JpdGllcy9jY21lY2VudHJhbHVzaWNhMDEwDQYJKoZIhvcNAQELBQADggEBAEdUznjVdYbUtxHD93flzOpv9itmdLU-P-i-amvvUBn1ESE_kJadN1MNgEM7wepiASPBur_kdjFJFZ5QdmL9EfoQmFlXLFS-v1qgMBh2uK-7Kx5nCPVe7MfrPZyaDtWWZoKQ1ku_7opeRh0t5mG0O3vQdmu-gxm9jX2bOhHTHW_uA9yYnskYrIv0kyqah1mv5zf85_XKMRSd592hVfIL4O9kUoKFjYKYWROv0MDSHRzOr2h9LjtoXGtDVpaGhgXaw6SQLRfR9piqIFxVYxpsgwP30Cdlvv9Vz-bZEpoPLRZc4_cpvPp6ZaWJSQgQNnoHo1QDfwAPoEEjmUxvRB06lrI&s=kAzgEICKj6S6UY-1rleKiCi0yn-vCKT56M9IoWcD9BJ-3Oq7J4TQZGvUbcv8jiXuhEM5lrdE1W5gaEo6k2cb6DF1AyFsgckb6pYzN7Lny0_-fkDvkPdSW_gXI6dxD3eRwIo9jurDFW4bhHmPElnvbx2ebC5CBpZhS3qxNs_f4rn3velTf_a7Bl49iCTAo5O0mfx9Lt3MPzo11GIGl3kbeatyvp8bD1Vp7nlQOpJKgZnxkPZ0JHSY3etfOK5xbtKocWzcbCx31aLPeiaQJproscL0XmBxp_K6goCZqUO-l_UFJ5VuUdvEJ-x_mrb0H4qQAzl9zJVWAmpxJUgU4w5Tqg&h=rK8hFaSU-K1pAwYFWc0Q00fCV8SWz13diRMg4HD0v0g + cache-control: + - no-cache + content-length: + - '428' + content-type: + - application/json; charset=utf-8 + date: + - Thu, 24 Sep 2026 07:17:40 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + x-cache: + - CONFIG_NOCACHE + x-content-type-options: + - nosniff + x-ms-operation-identifier: + - tenantId=4f00b3b6-2940-4f2c-b037-94637c180d30,objectId=881ac1a7-8ed0-4dc1-a472-ebdc489491bb/westus/7587f419-e534-4798-bda6-7de2303c8590 + x-ms-ratelimit-remaining-resource: + - Microsoft.Compute/CreateUpdateGallery3Min;49,Microsoft.Compute/CreateUpdateGallery30Min;295 + x-ms-ratelimit-remaining-subscription-global-writes: + - '2999' + x-ms-ratelimit-remaining-subscription-writes: + - '199' + x-msedge-ref: + - 'Ref A: C57DD06C20394CB69A171D577E42808D Ref B: KUL201100110052 Ref C: 2026-09-24T07:17:39Z' + status: + code: 201 + message: Created +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + CommandName: + - sig create + Connection: + - keep-alive + ParameterSetName: + - -g -r --location + User-Agent: + - AZURECLI/2.90.0 azsdk-python-core/1.39.0 Python/3.12.10 (Windows-11-10.0.26200-SP0) + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/westus/capsOperations/45743134-37cb-47b4-a201-a78b93fc436e?api-version=2026-03-03&t=639258310601869669&c=MIIHwzCCBqugAwIBAgIQO9vjerLJyzCAZGOG8qnuujANBgkqhkiG9w0BAQsFADA1MTMwMQYDVQQDEypDQ01FIEcxIFRMUyBSU0EgMjA0OCBTSEEyNTYgMjA0OSBDVVMgQ0EgMDEwHhcNMjYwOTE3MTkyNzU0WhcNMjYxMjEzMDEyNzU0WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOH7XcOFB9oBlttbwx8AirjT-trX0XvGg-qTsZnfCNKSBKRmEGUNPWfYKFgDpx0AZwfOinDzB58zssD8uZb2jeDqfJuiR1vqsOBWntnOkwx0IgWzw_pbET-L7lO_ZYW2-ec3c5ZewHiy0Jr51TL2zNtCadpjfB2g2RkKJY_5Zgyqgccwx0LvPgj81bdByhSFWtd49llL8NuFYWjo3Fk7HmsitrM-T8Z3xgac37X6nC2PTsQFiO6h917Etzgh-KBeYYfZiOTF9hHnetiX5px_9XecvBma56vHFyzqoF4VpkESo5tWkT_beymCu5gy2ngynn3SNDYyVgZXGrEn4V_OKM0CAwEAAaOCBMIwggS-MIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0OBBYEFLXKU9erjRhgRqjwHfGKduIH8QgZMB8GA1UdIwQYMBaAFPzkWgovhQ7nRLkHc3jg1EQHohkRMIIBygYDVR0fBIIBwTCCAb0wb6BtoGuGaWh0dHA6Ly9wcmltYXJ5LWNkbi5wa2kuY29yZS53aW5kb3dzLm5ldC9jZW50cmFsdXMvY3Jscy9jY21lY2VudHJhbHVzcGtpL2NjbWVjZW50cmFsdXNpY2EwMS84MS9jdXJyZW50LmNybDBxoG-gbYZraHR0cDovL3NlY29uZGFyeS1jZG4ucGtpLmNvcmUud2luZG93cy5uZXQvY2VudHJhbHVzL2NybHMvY2NtZWNlbnRyYWx1c3BraS9jY21lY2VudHJhbHVzaWNhMDEvODEvY3VycmVudC5jcmwwYKBeoFyGWmh0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9jZW50cmFsdXMvY3Jscy9jY21lY2VudHJhbHVzcGtpL2NjbWVjZW50cmFsdXNpY2EwMS84MS9jdXJyZW50LmNybDB1oHOgcYZvaHR0cDovL2NjbWVjZW50cmFsdXNwa2kuY2VudHJhbHVzLnBraS5jb3JlLndpbmRvd3MubmV0L2NlcnRpZmljYXRlQXV0aG9yaXRpZXMvY2NtZWNlbnRyYWx1c2ljYTAxLzgxL2N1cnJlbnQuY3JsMIIBzwYIKwYBBQUHAQEEggHBMIIBvTByBggrBgEFBQcwAoZmaHR0cDovL3ByaW1hcnktY2RuLnBraS5jb3JlLndpbmRvd3MubmV0L2NlbnRyYWx1cy9jYWNlcnRzL2NjbWVjZW50cmFsdXNwa2kvY2NtZWNlbnRyYWx1c2ljYTAxL2NlcnQuY2VyMHQGCCsGAQUFBzAChmhodHRwOi8vc2Vjb25kYXJ5LWNkbi5wa2kuY29yZS53aW5kb3dzLm5ldC9jZW50cmFsdXMvY2FjZXJ0cy9jY21lY2VudHJhbHVzcGtpL2NjbWVjZW50cmFsdXNpY2EwMS9jZXJ0LmNlcjBjBggrBgEFBQcwAoZXaHR0cDovL2NybC5taWNyb3NvZnQuY29tL2NlbnRyYWx1cy9jYWNlcnRzL2NjbWVjZW50cmFsdXNwa2kvY2NtZWNlbnRyYWx1c2ljYTAxL2NlcnQuY2VyMGwGCCsGAQUFBzAChmBodHRwOi8vY2NtZWNlbnRyYWx1c3BraS5jZW50cmFsdXMucGtpLmNvcmUud2luZG93cy5uZXQvY2VydGlmaWNhdGVBdXRob3JpdGllcy9jY21lY2VudHJhbHVzaWNhMDEwDQYJKoZIhvcNAQELBQADggEBAEdUznjVdYbUtxHD93flzOpv9itmdLU-P-i-amvvUBn1ESE_kJadN1MNgEM7wepiASPBur_kdjFJFZ5QdmL9EfoQmFlXLFS-v1qgMBh2uK-7Kx5nCPVe7MfrPZyaDtWWZoKQ1ku_7opeRh0t5mG0O3vQdmu-gxm9jX2bOhHTHW_uA9yYnskYrIv0kyqah1mv5zf85_XKMRSd592hVfIL4O9kUoKFjYKYWROv0MDSHRzOr2h9LjtoXGtDVpaGhgXaw6SQLRfR9piqIFxVYxpsgwP30Cdlvv9Vz-bZEpoPLRZc4_cpvPp6ZaWJSQgQNnoHo1QDfwAPoEEjmUxvRB06lrI&s=kAzgEICKj6S6UY-1rleKiCi0yn-vCKT56M9IoWcD9BJ-3Oq7J4TQZGvUbcv8jiXuhEM5lrdE1W5gaEo6k2cb6DF1AyFsgckb6pYzN7Lny0_-fkDvkPdSW_gXI6dxD3eRwIo9jurDFW4bhHmPElnvbx2ebC5CBpZhS3qxNs_f4rn3velTf_a7Bl49iCTAo5O0mfx9Lt3MPzo11GIGl3kbeatyvp8bD1Vp7nlQOpJKgZnxkPZ0JHSY3etfOK5xbtKocWzcbCx31aLPeiaQJproscL0XmBxp_K6goCZqUO-l_UFJ5VuUdvEJ-x_mrb0H4qQAzl9zJVWAmpxJUgU4w5Tqg&h=rK8hFaSU-K1pAwYFWc0Q00fCV8SWz13diRMg4HD0v0g + response: + body: + string: "{\r\n \"startTime\": \"2026-09-24T07:17:39.9758128+00:00\",\r\n \"endTime\": + \"2026-09-24T07:17:40.2729006+00:00\",\r\n \"status\": \"Succeeded\",\r\n + \ \"name\": \"45743134-37cb-47b4-a201-a78b93fc436e\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '184' + content-type: + - application/json; charset=utf-8 + date: + - Thu, 24 Sep 2026 07:17:43 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + x-cache: + - CONFIG_NOCACHE + x-content-type-options: + - nosniff + x-ms-operation-identifier: + - tenantId=4f00b3b6-2940-4f2c-b037-94637c180d30,objectId=881ac1a7-8ed0-4dc1-a472-ebdc489491bb/southeastasia/55335870-3ff7-421b-bf7f-5a5c3556cd09 + x-ms-ratelimit-remaining-resource: + - Microsoft.Compute/GetOperationStatus3Min;4999,Microsoft.Compute/GetOperationStatus30Min;14987 + x-ms-ratelimit-remaining-subscription-global-reads: + - '3749' + x-msedge-ref: + - 'Ref A: 37B1ED284EB7490B80AD3A41B49B8526 Ref B: KUL201100110034 Ref C: 2026-09-24T07:17:42Z' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + CommandName: + - sig create + Connection: + - keep-alive + ParameterSetName: + - -g -r --location + User-Agent: + - AZURECLI/2.90.0 azsdk-python-core/1.39.0 Python/3.12.10 (Windows-11-10.0.26200-SP0) + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_sig_share_wait_000001/providers/Microsoft.Compute/galleries/gallery000002?api-version=2026-03-03 + response: + body: + string: "{\r\n \"name\": \"gallery000002\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_sig_share_wait_000001/providers/Microsoft.Compute/galleries/gallery000002\",\r\n + \ \"type\": \"Microsoft.Compute/galleries\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"identifier\": {\r\n \"uniqueName\": \"f758ac53-3e63-4317-a956-0997793808d7-GALLERYKI45YWMQ2\"\r\n + \ },\r\n \"provisioningState\": \"Succeeded\"\r\n }\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '429' + content-type: + - application/json; charset=utf-8 + date: + - Thu, 24 Sep 2026 07:17:46 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + x-cache: + - CONFIG_NOCACHE + x-content-type-options: + - nosniff + x-ms-ratelimit-remaining-resource: + - Microsoft.Compute/GetGallery3Min;342,Microsoft.Compute/GetGallery30Min;2452 + x-ms-ratelimit-remaining-subscription-global-reads: + - '3749' + x-msedge-ref: + - 'Ref A: 50EC1F19D46A48D59894B0D193989BE7 Ref B: KUL201100111042 Ref C: 2026-09-24T07:17:46Z' + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + CommandName: + - sig share wait + Connection: + - keep-alive + ParameterSetName: + - -g -r --updated + User-Agent: + - AZURECLI/2.90.0 azsdk-python-core/1.39.0 Python/3.12.10 (Windows-11-10.0.26200-SP0) + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_sig_share_wait_000001/providers/Microsoft.Compute/galleries/gallery000002?$select=Permissions&api-version=2026-03-03 + response: + body: + string: "{\r\n \"name\": \"gallery000002\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_sig_share_wait_000001/providers/Microsoft.Compute/galleries/gallery000002\",\r\n + \ \"type\": \"Microsoft.Compute/galleries\",\r\n \"location\": \"westus\",\r\n + \ \"properties\": {\r\n \"identifier\": {\r\n \"uniqueName\": \"f758ac53-3e63-4317-a956-0997793808d7-GALLERYKI45YWMQ2\"\r\n + \ },\r\n \"provisioningState\": \"Succeeded\"\r\n }\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '429' + content-type: + - application/json; charset=utf-8 + date: + - Thu, 24 Sep 2026 07:17:49 GMT + expires: + - '-1' + pragma: + - no-cache + strict-transport-security: + - max-age=31536000; includeSubDomains + x-cache: + - CONFIG_NOCACHE + x-content-type-options: + - nosniff + x-ms-ratelimit-remaining-resource: + - Microsoft.Compute/GetGallery3Min;341,Microsoft.Compute/GetGallery30Min;2451 + x-ms-ratelimit-remaining-subscription-global-reads: + - '3749' + x-msedge-ref: + - 'Ref A: C4CB761A93BA4FB18E5D63AE13EA4D43 Ref B: KUL201100111025 Ref C: 2026-09-24T07:17:50Z' + status: + code: 200 + message: OK +version: 1 diff --git a/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_vm_commands.py b/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_vm_commands.py index bda03e1d5ae..42061f8fe45 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_vm_commands.py +++ b/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_vm_commands.py @@ -8115,7 +8115,17 @@ def test_vm_generic_update(self, resource_group): class VMGalleryImage(ScenarioTest): - + + @ResourceGroupPreparer(name_prefix='cli_test_sig_share_wait_', location='westus') + def test_sig_share_wait(self, resource_group_location): + self.kwargs.update({ + 'gallery': self.create_random_name('gallery', 16), + 'loc': resource_group_location, + }) + + self.cmd('sig create -g {rg} -r {gallery} --location {loc}') + self.cmd('sig share wait -g {rg} -r {gallery} --updated', checks=self.is_empty()) + @AllowLargeResponse() @ResourceGroupPreparer(location='westus') def test_shared_gallery(self, resource_group, resource_group_location):