From bb6e4e7dfe7f53c3d86dc3c3d6e7c8ab52ac39d1 Mon Sep 17 00:00:00 2001 From: Derek Bekoe Date: Fri, 29 Apr 2016 10:18:37 -0700 Subject: [PATCH 1/3] Fix: Pylint was not checking for unused_imports in __init__ files --- pylintrc | 5 ++++- .../azure/cli/command_modules/component/__init__.py | 4 ++-- .../azure/cli/command_modules/network/__init__.py | 1 - .../azure/cli/command_modules/profile/__init__.py | 8 ++++---- .../azure/cli/command_modules/storage/__init__.py | 1 - 5 files changed, 10 insertions(+), 9 deletions(-) diff --git a/pylintrc b/pylintrc index f30419087..4ad166c49 100644 --- a/pylintrc +++ b/pylintrc @@ -5,8 +5,11 @@ # I0011 Warning locally suppressed using disable-msg # W0511 fixme disable=C0111,C0103,I0011,W0511 +[VARIABLES] +# Tells whether we should check for unused import in __init__ files. +init-import=yes [DESIGN] # Maximum number of locals for function / method body max-locals=25 # Maximum number of branch for function / method body -max-branches=20 \ No newline at end of file +max-branches=20 diff --git a/src/command_modules/azure-cli-component/azure/cli/command_modules/component/__init__.py b/src/command_modules/azure-cli-component/azure/cli/command_modules/component/__init__.py index ddd31488d..bb68a0b1c 100644 --- a/src/command_modules/azure-cli-component/azure/cli/command_modules/component/__init__.py +++ b/src/command_modules/azure-cli-component/azure/cli/command_modules/component/__init__.py @@ -4,10 +4,10 @@ import pip from six.moves import input #pylint: disable=redefined-builtin from azure.cli.parser import IncorrectUsageError -from azure.cli.commands import CommandTable, COMMON_PARAMETERS +from azure.cli.commands import CommandTable from azure.cli._locale import L -from azure.cli.utils.update_checker import check_for_component_update, UpdateCheckError +from azure.cli.utils.update_checker import check_for_component_update CLI_PACKAGE_NAME = 'azure-cli' COMPONENT_PREFIX = 'azure-cli-' diff --git a/src/command_modules/azure-cli-network/azure/cli/command_modules/network/__init__.py b/src/command_modules/azure-cli-network/azure/cli/command_modules/network/__init__.py index ed1b28c73..c15bffaa1 100644 --- a/src/command_modules/azure-cli-network/azure/cli/command_modules/network/__init__.py +++ b/src/command_modules/azure-cli-network/azure/cli/command_modules/network/__init__.py @@ -1,4 +1,3 @@ -import time from azure.mgmt.network import NetworkManagementClient, NetworkManagementClientConfiguration from azure.mgmt.network.operations import (ApplicationGatewaysOperations, ExpressRouteCircuitAuthorizationsOperations, diff --git a/src/command_modules/azure-cli-profile/azure/cli/command_modules/profile/__init__.py b/src/command_modules/azure-cli-profile/azure/cli/command_modules/profile/__init__.py index 2d1d7af8f..73f6919d3 100644 --- a/src/command_modules/azure-cli-profile/azure/cli/command_modules/profile/__init__.py +++ b/src/command_modules/azure-cli-profile/azure/cli/command_modules/profile/__init__.py @@ -1,6 +1,6 @@ -import azure.cli.command_modules.profile.account -import azure.cli.command_modules.profile.login -import azure.cli.command_modules.profile.logout -from azure.cli.command_modules.profile.command_tables import COMMAND_TABLES, generate_command_table +import azure.cli.command_modules.profile.account #pylint: disable=unused-import +import azure.cli.command_modules.profile.login #pylint: disable=unused-import +import azure.cli.command_modules.profile.logout #pylint: disable=unused-import +from azure.cli.command_modules.profile.command_tables import generate_command_table command_table = generate_command_table() diff --git a/src/command_modules/azure-cli-storage/azure/cli/command_modules/storage/__init__.py b/src/command_modules/azure-cli-storage/azure/cli/command_modules/storage/__init__.py index 2f9e27aea..690867d3a 100644 --- a/src/command_modules/azure-cli-storage/azure/cli/command_modules/storage/__init__.py +++ b/src/command_modules/azure-cli-storage/azure/cli/command_modules/storage/__init__.py @@ -1,5 +1,4 @@ from __future__ import print_function -import os from sys import stderr from azure.storage.blob import PublicAccess, BlockBlobService, AppendBlobService, PageBlobService From 62261f8fb1f59d3c48ea449cb576d098214bb10c Mon Sep 17 00:00:00 2001 From: Yugang Wang Date: Fri, 29 Apr 2016 16:41:11 -0700 Subject: [PATCH 2/3] fix "az vm list" to take resource group (#193) * fix several places missed by command aliaing * fix resource show command --- .../cli/command_modules/resource/__init__.py | 6 +- .../resource/tests/command_specs.py | 4 + .../tests/recordings/expected_results.res | 3 +- .../test_resource_show_under_group.yaml | 130 ++++++++++++++++++ .../resource/tests/test_api_check.py | 8 +- .../tests/test_resource_list_odata_filter.py | 12 +- .../azure/cli/command_modules/vm/custom.py | 8 +- .../command_modules/vm/tests/command_specs.py | 4 + .../vm/tests/recordings/expected_results.res | 1 + .../recordings/test_vm_list_from_group.yaml | 45 ++++++ 10 files changed, 203 insertions(+), 18 deletions(-) create mode 100644 src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/recordings/test_resource_show_under_group.yaml create mode 100644 src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/recordings/test_vm_list_from_group.yaml diff --git a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/__init__.py b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/__init__.py index a7fe14e7d..739673a2d 100644 --- a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/__init__.py +++ b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/__init__.py @@ -1,5 +1,5 @@ from azure.cli.parser import IncorrectUsageError -from azure.cli.commands import CommandTable, COMMON_PARAMETERS +from azure.cli.commands import CommandTable, COMMON_PARAMETERS, RESOURCE_GROUP_ARG_NAME from azure.cli.commands._command_creation import get_mgmt_service_client from azure.cli._locale import L @@ -57,7 +57,7 @@ def show_resource(args): L('API version is required and could not be resolved for resource {}' .format(full_type))) results = rmc.resources.get( - resource_group_name=args.get('resourcegroup'), + resource_group_name=args.get(RESOURCE_GROUP_ARG_NAME), resource_name=args.get('name'), resource_provider_namespace=provider_namespace, resource_type=resource_type, @@ -127,7 +127,7 @@ def _resolve_api_version(args, rmc): # if api-version not supplied, attempt to resolve using provider namespace parent = args.get('parent') - full_type = args.get('resource-type').split('/') + full_type = args.get('resource_type').split('/') try: provider_namespace = full_type[0] resource_type = full_type[1] diff --git a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/command_specs.py b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/command_specs.py index dcff3d527..3f93dad5e 100644 --- a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/command_specs.py +++ b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/command_specs.py @@ -6,6 +6,10 @@ TEST_DEF = [ { 'test_name': 'resource_group_list', 'command': 'resource group list --output json' + }, + { + 'test_name': 'resource_show_under_group', + 'command': 'resource show -n xplatvmExt1314 --resource-group XPLATTESTGEXTENSION9085 --resource-type Microsoft.Compute/virtualMachines --output json' } ] diff --git a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/recordings/expected_results.res b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/recordings/expected_results.res index 06b0e43fc..abc7149d2 100644 --- a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/recordings/expected_results.res +++ b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/recordings/expected_results.res @@ -1,3 +1,4 @@ { - "test_resource_group_list": "[\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1131\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1131\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1215\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1215\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1397\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1397\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1530\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1530\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1691\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1691\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1804\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1804\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1982\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1982\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup2315\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup2315\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup2316\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup2316\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup2732\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup2732\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup3187\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup3187\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup32\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup32\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup3313\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup3313\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup3661\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup3661\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup381\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup381\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup4175\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup4175\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup4834\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup4834\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup4978\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup4978\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup5458\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup5458\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup5584\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup5584\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup5637\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup5637\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup5835\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup5835\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup6020\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup6020\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup7062\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup7062\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup7154\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup7154\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup7265\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup7265\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup7648\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup7648\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup7917\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup7917\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup8241\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup8241\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup8275\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup8275\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup867\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup867\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup9079\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup9079\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup922\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup922\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup9343\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup9343\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup9345\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup9345\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup9369\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup9369\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup9576\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup9576\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cliTeleBenchRG\",\n \"location\": \"westus\",\n \"name\": \"cliTeleBenchRG\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst10658\",\n \"location\": \"westus\",\n \"name\": \"clutst10658\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst10658Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst10658Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst11617\",\n \"location\": \"westus\",\n \"name\": \"clutst11617\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst12131\",\n \"location\": \"westus\",\n \"name\": \"clutst12131\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst14273\",\n \"location\": \"westus\",\n \"name\": \"clutst14273\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst15898\",\n \"location\": \"westus\",\n \"name\": \"clutst15898\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst16319\",\n \"location\": \"westus\",\n \"name\": \"clutst16319\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst16367\",\n \"location\": \"westus\",\n \"name\": \"clutst16367\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst16424\",\n \"location\": \"westus\",\n \"name\": \"clutst16424\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst16599\",\n \"location\": \"westus\",\n \"name\": \"clutst16599\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst18253\",\n \"location\": \"westus\",\n \"name\": \"clutst18253\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst18832\",\n \"location\": \"westus\",\n \"name\": \"clutst18832\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst19840\",\n \"location\": \"westus\",\n \"name\": \"clutst19840\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst19876\",\n \"location\": \"westus\",\n \"name\": \"clutst19876\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst19910\",\n \"location\": \"westus\",\n \"name\": \"clutst19910\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst20217\",\n \"location\": \"westus\",\n \"name\": \"clutst20217\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst22301\",\n \"location\": \"westus\",\n \"name\": \"clutst22301\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst24285\",\n \"location\": \"westus\",\n \"name\": \"clutst24285\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst25492\",\n \"location\": \"westus\",\n \"name\": \"clutst25492\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst25492Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst25492Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst28055\",\n \"location\": \"westus\",\n \"name\": \"clutst28055\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst28400\",\n \"location\": \"westus\",\n \"name\": \"clutst28400\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst28769\",\n \"location\": \"westus\",\n \"name\": \"clutst28769\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst29085\",\n \"location\": \"westus\",\n \"name\": \"clutst29085\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst29333\",\n \"location\": \"westus\",\n \"name\": \"clutst29333\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst30089\",\n \"location\": \"westus\",\n \"name\": \"clutst30089\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst31207\",\n \"location\": \"westus\",\n \"name\": \"clutst31207\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst31335\",\n \"location\": \"westus\",\n \"name\": \"clutst31335\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst32303\",\n \"location\": \"westus\",\n \"name\": \"clutst32303\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst34632\",\n \"location\": \"westus\",\n \"name\": \"clutst34632\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst37223\",\n \"location\": \"westus\",\n \"name\": \"clutst37223\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst38483\",\n \"location\": \"westus\",\n \"name\": \"clutst38483\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst39112\",\n \"location\": \"westus\",\n \"name\": \"clutst39112\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst40026\",\n \"location\": \"westus\",\n \"name\": \"clutst40026\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst41390\",\n \"location\": \"westus\",\n \"name\": \"clutst41390\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst42144\",\n \"location\": \"westus\",\n \"name\": \"clutst42144\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst42144Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst42144Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst43083\",\n \"location\": \"westus\",\n \"name\": \"clutst43083\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst43810\",\n \"location\": \"westus\",\n \"name\": \"clutst43810\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst43963\",\n \"location\": \"westus\",\n \"name\": \"clutst43963\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst44249\",\n \"location\": \"westus\",\n \"name\": \"clutst44249\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst44935\",\n \"location\": \"westus\",\n \"name\": \"clutst44935\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst45773\",\n \"location\": \"westus\",\n \"name\": \"clutst45773\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst47034\",\n \"location\": \"westus\",\n \"name\": \"clutst47034\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst48178\",\n \"location\": \"westus\",\n \"name\": \"clutst48178\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst50877\",\n \"location\": \"westus\",\n \"name\": \"clutst50877\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst50926\",\n \"location\": \"westus\",\n \"name\": \"clutst50926\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst52016\",\n \"location\": \"westus\",\n \"name\": \"clutst52016\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst53369\",\n \"location\": \"westus\",\n \"name\": \"clutst53369\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst54011\",\n \"location\": \"westus\",\n \"name\": \"clutst54011\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"testtag\": \"testval\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst55339\",\n \"location\": \"westus\",\n \"name\": \"clutst55339\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst55642\",\n \"location\": \"westus\",\n \"name\": \"clutst55642\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst56010\",\n \"location\": \"westus\",\n \"name\": \"clutst56010\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst56010Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst56010Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst57974\",\n \"location\": \"westus\",\n \"name\": \"clutst57974\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst59108\",\n \"location\": \"westus\",\n \"name\": \"clutst59108\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst59926\",\n \"location\": \"westus\",\n \"name\": \"clutst59926\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst60612\",\n \"location\": \"westus\",\n \"name\": \"clutst60612\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst62393\",\n \"location\": \"westus\",\n \"name\": \"clutst62393\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst62671\",\n \"location\": \"westus\",\n \"name\": \"clutst62671\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst63961\",\n \"location\": \"westus\",\n \"name\": \"clutst63961\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst64118\",\n \"location\": \"westus\",\n \"name\": \"clutst64118\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst64902\",\n \"location\": \"westus\",\n \"name\": \"clutst64902\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst65563\",\n \"location\": \"westus\",\n \"name\": \"clutst65563\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst65944\",\n \"location\": \"westus\",\n \"name\": \"clutst65944\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst68622\",\n \"location\": \"westus\",\n \"name\": \"clutst68622\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst69042\",\n \"location\": \"westus\",\n \"name\": \"clutst69042\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst72034\",\n \"location\": \"westus\",\n \"name\": \"clutst72034\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst72937\",\n \"location\": \"westus\",\n \"name\": \"clutst72937\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst73017\",\n \"location\": \"westus\",\n \"name\": \"clutst73017\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst73226\",\n \"location\": \"westus\",\n \"name\": \"clutst73226\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst73623\",\n \"location\": \"westus\",\n \"name\": \"clutst73623\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst74333\",\n \"location\": \"westus\",\n \"name\": \"clutst74333\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst74607\",\n \"location\": \"westus\",\n \"name\": \"clutst74607\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst75011\",\n \"location\": \"westus\",\n \"name\": \"clutst75011\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst76021\",\n \"location\": \"westus\",\n \"name\": \"clutst76021\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst76811\",\n \"location\": \"westus\",\n \"name\": \"clutst76811\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst77155\",\n \"location\": \"westus\",\n \"name\": \"clutst77155\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst78595\",\n \"location\": \"westus\",\n \"name\": \"clutst78595\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst81406\",\n \"location\": \"westus\",\n \"name\": \"clutst81406\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst82639\",\n \"location\": \"westus\",\n \"name\": \"clutst82639\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst82782\",\n \"location\": \"westus\",\n \"name\": \"clutst82782\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst83830\",\n \"location\": \"westus\",\n \"name\": \"clutst83830\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst84001\",\n \"location\": \"westus\",\n \"name\": \"clutst84001\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst84215\",\n \"location\": \"westus\",\n \"name\": \"clutst84215\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst84761\",\n \"location\": \"westus\",\n \"name\": \"clutst84761\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst85399\",\n \"location\": \"westus\",\n \"name\": \"clutst85399\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst86517\",\n \"location\": \"westus\",\n \"name\": \"clutst86517\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst86564\",\n \"location\": \"westus\",\n \"name\": \"clutst86564\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst86711\",\n \"location\": \"westus\",\n \"name\": \"clutst86711\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst88326\",\n \"location\": \"westus\",\n \"name\": \"clutst88326\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst88434\",\n \"location\": \"westus\",\n \"name\": \"clutst88434\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst88867\",\n \"location\": \"westus\",\n \"name\": \"clutst88867\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst89058\",\n \"location\": \"westus\",\n \"name\": \"clutst89058\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst89058Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst89058Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst89757\",\n \"location\": \"westus\",\n \"name\": \"clutst89757\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst89757Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst89757Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst90450\",\n \"location\": \"westus\",\n \"name\": \"clutst90450\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst90450Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst90450Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst92020\",\n \"location\": \"westus\",\n \"name\": \"clutst92020\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst92142\",\n \"location\": \"westus\",\n \"name\": \"clutst92142\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst93247\",\n \"location\": \"westus\",\n \"name\": \"clutst93247\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst95104\",\n \"location\": \"westus\",\n \"name\": \"clutst95104\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst96863\",\n \"location\": \"westus\",\n \"name\": \"clutst96863\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst96978\",\n \"location\": \"westus\",\n \"name\": \"clutst96978\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst97385\",\n \"location\": \"westus\",\n \"name\": \"clutst97385\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst98032\",\n \"location\": \"westus\",\n \"name\": \"clutst98032\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst98129\",\n \"location\": \"westus\",\n \"name\": \"clutst98129\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst98581\",\n \"location\": \"westus\",\n \"name\": \"clutst98581\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-ApplicationInsights-CentralUS\",\n \"location\": \"centralus\",\n \"name\": \"Default-ApplicationInsights-CentralUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-Networking\",\n \"location\": \"westus\",\n \"name\": \"Default-Networking\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-NotificationHubs-WestUS\",\n \"location\": \"westus\",\n \"name\": \"Default-NotificationHubs-WestUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-ServiceBus-WestUS\",\n \"location\": \"westus\",\n \"name\": \"Default-ServiceBus-WestUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-SQL-WestUS\",\n \"location\": \"westus\",\n \"name\": \"Default-SQL-WestUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-Storage-WestUS\",\n \"location\": \"westus\",\n \"name\": \"Default-Storage-WestUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-Web-WestUS\",\n \"location\": \"westus\",\n \"name\": \"Default-Web-WestUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/destanko-test1\",\n \"location\": \"westus\",\n \"name\": \"destanko-test1\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/destanko-test1233333\",\n \"location\": \"westus\",\n \"name\": \"destanko-test1233333\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/ecvm1458938841925RG\",\n \"location\": \"southeastasia\",\n \"name\": \"ecvm1458938841925RG\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/foozap01\",\n \"location\": \"westus\",\n \"name\": \"foozap01\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/ppppp2\",\n \"location\": \"southcentralus\",\n \"name\": \"ppppp2\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/pppppp\",\n \"location\": \"westus\",\n \"name\": \"pppppp\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/r1\",\n \"location\": \"westus\",\n \"name\": \"r1\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/testrg15109\",\n \"location\": \"westus\",\n \"name\": \"testrg15109\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/testrg16663\",\n \"location\": \"westus\",\n \"name\": \"testrg16663\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/testrg18579\",\n \"location\": \"westus\",\n \"name\": \"testrg18579\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/testrg8559\",\n \"location\": \"westus\",\n \"name\": \"testrg8559\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/TravisTestResourceGroup\",\n \"location\": \"westus\",\n \"name\": \"TravisTestResourceGroup\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplattestadla7278\",\n \"location\": \"southcentralus\",\n \"name\": \"xplattestadla7278\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGCreate1218\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGCreate1218\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGCreate3656\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGCreate3656\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGCreateDns2167\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGCreateDns2167\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGCreateDns7046\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGCreateDns7046\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGCreateLbNat3\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGCreateLbNat3\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGExpressRoute3509\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGExpressRoute3509\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGExtension5940\",\n \"location\": \"eastus\",\n \"name\": \"xplatTestGExtension5940\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"arm-cli-vm-extension-tests\": \"2016-02-29T08:05:18.907Z\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGExtension9085\",\n \"location\": \"southeastasia\",\n \"name\": \"xplatTestGExtension9085\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"arm-cli-vm-extension-tests\": \"2016-01-21T23:38:57.711Z\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGroupGatewayCon7412\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGroupGatewayCon7412\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGSz6241\",\n \"location\": \"eastus\",\n \"name\": \"xplatTestGSz6241\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"arm-cli-vm-sizes-tests\": \"2016-02-02T13:11:46.487Z\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGVMDocker2951\",\n \"location\": \"eastus\",\n \"name\": \"xplatTestGVMDocker2951\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"arm-cli-vm-docker-tests\": \"2016-02-18T16:05:48.920Z\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGVMDocker6705\",\n \"location\": \"eastus\",\n \"name\": \"xplatTestGVMDocker6705\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"arm-cli-vm-docker-tests\": \"2016-02-29T12:20:36.945Z\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource1531\",\n \"location\": \"westus\",\n \"name\": \"xTestResource1531\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource1730\",\n \"location\": \"westus\",\n \"name\": \"xTestResource1730\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource194\",\n \"location\": \"westus\",\n \"name\": \"xTestResource194\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource2039\",\n \"location\": \"westus\",\n \"name\": \"xTestResource2039\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource2660\",\n \"location\": \"westus\",\n \"name\": \"xTestResource2660\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource318\",\n \"location\": \"southcentralus\",\n \"name\": \"xTestResource318\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource3362\",\n \"location\": \"westus\",\n \"name\": \"xTestResource3362\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource3559\",\n \"location\": \"westus\",\n \"name\": \"xTestResource3559\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource4219\",\n \"location\": \"westus\",\n \"name\": \"xTestResource4219\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource475\",\n \"location\": \"westus\",\n \"name\": \"xTestResource475\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource5203\",\n \"location\": \"westus\",\n \"name\": \"xTestResource5203\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource5515\",\n \"location\": \"westus\",\n \"name\": \"xTestResource5515\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource723\",\n \"location\": \"southcentralus\",\n \"name\": \"xTestResource723\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource7252\",\n \"location\": \"westus\",\n \"name\": \"xTestResource7252\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource7909\",\n \"location\": \"westus\",\n \"name\": \"xTestResource7909\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource811\",\n \"location\": \"westus\",\n \"name\": \"xTestResource811\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource9256\",\n \"location\": \"westus\",\n \"name\": \"xTestResource9256\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource9641\",\n \"location\": \"westus\",\n \"name\": \"xTestResource9641\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource9737\",\n \"location\": \"westus\",\n \"name\": \"xTestResource9737\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/ygvmgroup\",\n \"location\": \"westus\",\n \"name\": \"ygvmgroup\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n }\n]\n" + "test_resource_group_list": "[\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1131\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1131\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1215\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1215\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1397\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1397\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1530\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1530\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1691\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1691\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1804\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1804\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup1982\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup1982\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup2315\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup2315\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup2316\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup2316\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup2732\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup2732\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup3187\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup3187\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup32\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup32\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup3313\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup3313\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup3661\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup3661\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup381\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup381\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup4175\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup4175\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup4834\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup4834\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup4978\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup4978\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup5458\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup5458\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup5584\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup5584\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup5637\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup5637\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup5835\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup5835\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup6020\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup6020\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup7062\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup7062\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup7154\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup7154\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup7265\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup7265\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup7648\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup7648\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup7917\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup7917\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup8241\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup8241\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup8275\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup8275\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup867\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup867\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup9079\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup9079\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup922\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup922\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup9343\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup9343\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup9345\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup9345\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup9369\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup9369\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/armclistorageGroup9576\",\n \"location\": \"westus\",\n \"name\": \"armclistorageGroup9576\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cliTeleBenchRG\",\n \"location\": \"westus\",\n \"name\": \"cliTeleBenchRG\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst10658\",\n \"location\": \"westus\",\n \"name\": \"clutst10658\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst10658Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst10658Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst11617\",\n \"location\": \"westus\",\n \"name\": \"clutst11617\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst12131\",\n \"location\": \"westus\",\n \"name\": \"clutst12131\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst14273\",\n \"location\": \"westus\",\n \"name\": \"clutst14273\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst15898\",\n \"location\": \"westus\",\n \"name\": \"clutst15898\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst16319\",\n \"location\": \"westus\",\n \"name\": \"clutst16319\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst16367\",\n \"location\": \"westus\",\n \"name\": \"clutst16367\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst16424\",\n \"location\": \"westus\",\n \"name\": \"clutst16424\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst16599\",\n \"location\": \"westus\",\n \"name\": \"clutst16599\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst18253\",\n \"location\": \"westus\",\n \"name\": \"clutst18253\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst18832\",\n \"location\": \"westus\",\n \"name\": \"clutst18832\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst19840\",\n \"location\": \"westus\",\n \"name\": \"clutst19840\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst19876\",\n \"location\": \"westus\",\n \"name\": \"clutst19876\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst19910\",\n \"location\": \"westus\",\n \"name\": \"clutst19910\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst20217\",\n \"location\": \"westus\",\n \"name\": \"clutst20217\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst22301\",\n \"location\": \"westus\",\n \"name\": \"clutst22301\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst24285\",\n \"location\": \"westus\",\n \"name\": \"clutst24285\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst25492\",\n \"location\": \"westus\",\n \"name\": \"clutst25492\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst25492Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst25492Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst28055\",\n \"location\": \"westus\",\n \"name\": \"clutst28055\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst28400\",\n \"location\": \"westus\",\n \"name\": \"clutst28400\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst28769\",\n \"location\": \"westus\",\n \"name\": \"clutst28769\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst29085\",\n \"location\": \"westus\",\n \"name\": \"clutst29085\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst29333\",\n \"location\": \"westus\",\n \"name\": \"clutst29333\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst30089\",\n \"location\": \"westus\",\n \"name\": \"clutst30089\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst31207\",\n \"location\": \"westus\",\n \"name\": \"clutst31207\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst31335\",\n \"location\": \"westus\",\n \"name\": \"clutst31335\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst32303\",\n \"location\": \"westus\",\n \"name\": \"clutst32303\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst34632\",\n \"location\": \"westus\",\n \"name\": \"clutst34632\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst37223\",\n \"location\": \"westus\",\n \"name\": \"clutst37223\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst38483\",\n \"location\": \"westus\",\n \"name\": \"clutst38483\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst39112\",\n \"location\": \"westus\",\n \"name\": \"clutst39112\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst40026\",\n \"location\": \"westus\",\n \"name\": \"clutst40026\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst41390\",\n \"location\": \"westus\",\n \"name\": \"clutst41390\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst42144\",\n \"location\": \"westus\",\n \"name\": \"clutst42144\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst42144Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst42144Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst43083\",\n \"location\": \"westus\",\n \"name\": \"clutst43083\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst43810\",\n \"location\": \"westus\",\n \"name\": \"clutst43810\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst43963\",\n \"location\": \"westus\",\n \"name\": \"clutst43963\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst44249\",\n \"location\": \"westus\",\n \"name\": \"clutst44249\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst44935\",\n \"location\": \"westus\",\n \"name\": \"clutst44935\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst45773\",\n \"location\": \"westus\",\n \"name\": \"clutst45773\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst47034\",\n \"location\": \"westus\",\n \"name\": \"clutst47034\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst48178\",\n \"location\": \"westus\",\n \"name\": \"clutst48178\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst50877\",\n \"location\": \"westus\",\n \"name\": \"clutst50877\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst50926\",\n \"location\": \"westus\",\n \"name\": \"clutst50926\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst52016\",\n \"location\": \"westus\",\n \"name\": \"clutst52016\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst53369\",\n \"location\": \"westus\",\n \"name\": \"clutst53369\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst54011\",\n \"location\": \"westus\",\n \"name\": \"clutst54011\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"testtag\": \"testval\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst55339\",\n \"location\": \"westus\",\n \"name\": \"clutst55339\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst55642\",\n \"location\": \"westus\",\n \"name\": \"clutst55642\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst56010\",\n \"location\": \"westus\",\n \"name\": \"clutst56010\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst56010Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst56010Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst57974\",\n \"location\": \"westus\",\n \"name\": \"clutst57974\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst59108\",\n \"location\": \"westus\",\n \"name\": \"clutst59108\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst59926\",\n \"location\": \"westus\",\n \"name\": \"clutst59926\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst60612\",\n \"location\": \"westus\",\n \"name\": \"clutst60612\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst62393\",\n \"location\": \"westus\",\n \"name\": \"clutst62393\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst62671\",\n \"location\": \"westus\",\n \"name\": \"clutst62671\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst63961\",\n \"location\": \"westus\",\n \"name\": \"clutst63961\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst64118\",\n \"location\": \"westus\",\n \"name\": \"clutst64118\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst64902\",\n \"location\": \"westus\",\n \"name\": \"clutst64902\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst65563\",\n \"location\": \"westus\",\n \"name\": \"clutst65563\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst65944\",\n \"location\": \"westus\",\n \"name\": \"clutst65944\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst68622\",\n \"location\": \"westus\",\n \"name\": \"clutst68622\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst69042\",\n \"location\": \"westus\",\n \"name\": \"clutst69042\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst72034\",\n \"location\": \"westus\",\n \"name\": \"clutst72034\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst72937\",\n \"location\": \"westus\",\n \"name\": \"clutst72937\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst73017\",\n \"location\": \"westus\",\n \"name\": \"clutst73017\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst73226\",\n \"location\": \"westus\",\n \"name\": \"clutst73226\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst73623\",\n \"location\": \"westus\",\n \"name\": \"clutst73623\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst74333\",\n \"location\": \"westus\",\n \"name\": \"clutst74333\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst74607\",\n \"location\": \"westus\",\n \"name\": \"clutst74607\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst75011\",\n \"location\": \"westus\",\n \"name\": \"clutst75011\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst76021\",\n \"location\": \"westus\",\n \"name\": \"clutst76021\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst76811\",\n \"location\": \"westus\",\n \"name\": \"clutst76811\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst77155\",\n \"location\": \"westus\",\n \"name\": \"clutst77155\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst78595\",\n \"location\": \"westus\",\n \"name\": \"clutst78595\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst81406\",\n \"location\": \"westus\",\n \"name\": \"clutst81406\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst82639\",\n \"location\": \"westus\",\n \"name\": \"clutst82639\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst82782\",\n \"location\": \"westus\",\n \"name\": \"clutst82782\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst83830\",\n \"location\": \"westus\",\n \"name\": \"clutst83830\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst84001\",\n \"location\": \"westus\",\n \"name\": \"clutst84001\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst84215\",\n \"location\": \"westus\",\n \"name\": \"clutst84215\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst84761\",\n \"location\": \"westus\",\n \"name\": \"clutst84761\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst85399\",\n \"location\": \"westus\",\n \"name\": \"clutst85399\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst86517\",\n \"location\": \"westus\",\n \"name\": \"clutst86517\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst86564\",\n \"location\": \"westus\",\n \"name\": \"clutst86564\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst86711\",\n \"location\": \"westus\",\n \"name\": \"clutst86711\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst88326\",\n \"location\": \"westus\",\n \"name\": \"clutst88326\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst88434\",\n \"location\": \"westus\",\n \"name\": \"clutst88434\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst88867\",\n \"location\": \"westus\",\n \"name\": \"clutst88867\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst89058\",\n \"location\": \"westus\",\n \"name\": \"clutst89058\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst89058Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst89058Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst89757\",\n \"location\": \"westus\",\n \"name\": \"clutst89757\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst89757Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst89757Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst90450\",\n \"location\": \"westus\",\n \"name\": \"clutst90450\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst90450Destination\",\n \"location\": \"westus\",\n \"name\": \"clutst90450Destination\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst92020\",\n \"location\": \"westus\",\n \"name\": \"clutst92020\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst92142\",\n \"location\": \"westus\",\n \"name\": \"clutst92142\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst93247\",\n \"location\": \"westus\",\n \"name\": \"clutst93247\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst95104\",\n \"location\": \"westus\",\n \"name\": \"clutst95104\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst96863\",\n \"location\": \"westus\",\n \"name\": \"clutst96863\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst96978\",\n \"location\": \"westus\",\n \"name\": \"clutst96978\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst97385\",\n \"location\": \"westus\",\n \"name\": \"clutst97385\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst98032\",\n \"location\": \"westus\",\n \"name\": \"clutst98032\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst98129\",\n \"location\": \"westus\",\n \"name\": \"clutst98129\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/clutst98581\",\n \"location\": \"westus\",\n \"name\": \"clutst98581\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-ApplicationInsights-CentralUS\",\n \"location\": \"centralus\",\n \"name\": \"Default-ApplicationInsights-CentralUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-Networking\",\n \"location\": \"westus\",\n \"name\": \"Default-Networking\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-NotificationHubs-WestUS\",\n \"location\": \"westus\",\n \"name\": \"Default-NotificationHubs-WestUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-ServiceBus-WestUS\",\n \"location\": \"westus\",\n \"name\": \"Default-ServiceBus-WestUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-SQL-WestUS\",\n \"location\": \"westus\",\n \"name\": \"Default-SQL-WestUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-Storage-WestUS\",\n \"location\": \"westus\",\n \"name\": \"Default-Storage-WestUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/Default-Web-WestUS\",\n \"location\": \"westus\",\n \"name\": \"Default-Web-WestUS\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/destanko-test1\",\n \"location\": \"westus\",\n \"name\": \"destanko-test1\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/destanko-test1233333\",\n \"location\": \"westus\",\n \"name\": \"destanko-test1233333\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/ecvm1458938841925RG\",\n \"location\": \"southeastasia\",\n \"name\": \"ecvm1458938841925RG\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/foozap01\",\n \"location\": \"westus\",\n \"name\": \"foozap01\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/ppppp2\",\n \"location\": \"southcentralus\",\n \"name\": \"ppppp2\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/pppppp\",\n \"location\": \"westus\",\n \"name\": \"pppppp\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/r1\",\n \"location\": \"westus\",\n \"name\": \"r1\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/testrg15109\",\n \"location\": \"westus\",\n \"name\": \"testrg15109\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/testrg16663\",\n \"location\": \"westus\",\n \"name\": \"testrg16663\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/testrg18579\",\n \"location\": \"westus\",\n \"name\": \"testrg18579\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/testrg8559\",\n \"location\": \"westus\",\n \"name\": \"testrg8559\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/TravisTestResourceGroup\",\n \"location\": \"westus\",\n \"name\": \"TravisTestResourceGroup\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": null\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplattestadla7278\",\n \"location\": \"southcentralus\",\n \"name\": \"xplattestadla7278\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGCreate1218\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGCreate1218\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGCreate3656\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGCreate3656\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGCreateDns2167\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGCreateDns2167\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGCreateDns7046\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGCreateDns7046\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGCreateLbNat3\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGCreateLbNat3\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGExpressRoute3509\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGExpressRoute3509\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGExtension5940\",\n \"location\": \"eastus\",\n \"name\": \"xplatTestGExtension5940\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"arm-cli-vm-extension-tests\": \"2016-02-29T08:05:18.907Z\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGExtension9085\",\n \"location\": \"southeastasia\",\n \"name\": \"xplatTestGExtension9085\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"arm-cli-vm-extension-tests\": \"2016-01-21T23:38:57.711Z\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGroupGatewayCon7412\",\n \"location\": \"westus\",\n \"name\": \"xplatTestGroupGatewayCon7412\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGSz6241\",\n \"location\": \"eastus\",\n \"name\": \"xplatTestGSz6241\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"arm-cli-vm-sizes-tests\": \"2016-02-02T13:11:46.487Z\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGVMDocker2951\",\n \"location\": \"eastus\",\n \"name\": \"xplatTestGVMDocker2951\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"arm-cli-vm-docker-tests\": \"2016-02-18T16:05:48.920Z\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGVMDocker6705\",\n \"location\": \"eastus\",\n \"name\": \"xplatTestGVMDocker6705\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {\n \"arm-cli-vm-docker-tests\": \"2016-02-29T12:20:36.945Z\"\n }\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource1531\",\n \"location\": \"westus\",\n \"name\": \"xTestResource1531\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource1730\",\n \"location\": \"westus\",\n \"name\": \"xTestResource1730\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource194\",\n \"location\": \"westus\",\n \"name\": \"xTestResource194\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource2039\",\n \"location\": \"westus\",\n \"name\": \"xTestResource2039\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource2660\",\n \"location\": \"westus\",\n \"name\": \"xTestResource2660\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource318\",\n \"location\": \"southcentralus\",\n \"name\": \"xTestResource318\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource3362\",\n \"location\": \"westus\",\n \"name\": \"xTestResource3362\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource3559\",\n \"location\": \"westus\",\n \"name\": \"xTestResource3559\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource4219\",\n \"location\": \"westus\",\n \"name\": \"xTestResource4219\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource475\",\n \"location\": \"westus\",\n \"name\": \"xTestResource475\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource5203\",\n \"location\": \"westus\",\n \"name\": \"xTestResource5203\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource5515\",\n \"location\": \"westus\",\n \"name\": \"xTestResource5515\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource723\",\n \"location\": \"southcentralus\",\n \"name\": \"xTestResource723\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource7252\",\n \"location\": \"westus\",\n \"name\": \"xTestResource7252\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource7909\",\n \"location\": \"westus\",\n \"name\": \"xTestResource7909\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource811\",\n \"location\": \"westus\",\n \"name\": \"xTestResource811\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource9256\",\n \"location\": \"westus\",\n \"name\": \"xTestResource9256\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource9641\",\n \"location\": \"westus\",\n \"name\": \"xTestResource9641\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xTestResource9737\",\n \"location\": \"westus\",\n \"name\": \"xTestResource9737\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n },\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/ygvmgroup\",\n \"location\": \"westus\",\n \"name\": \"ygvmgroup\",\n \"properties\": {\n \"provisioningState\": \"Succeeded\"\n },\n \"tags\": {}\n }\n]\n", + "test_resource_show_under_group": "{\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/XPLATTESTGEXTENSION9085/providers/Microsoft.Compute/virtualMachines/xplatvmExt1314\",\n \"location\": \"southeastasia\",\n \"name\": \"xplatvmExt1314\",\n \"plan\": null,\n \"properties\": {\n \"diagnosticsProfile\": {\n \"bootDiagnostics\": {\n \"enabled\": true,\n \"storageUri\": \"https://xplatstoragext4633.blob.core.windows.net/\"\n }\n },\n \"hardwareProfile\": {\n \"vmSize\": \"Standard_A1\"\n },\n \"networkProfile\": {\n \"networkInterfaces\": [\n {\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGExtension9085/providers/Microsoft.Network/networkInterfaces/xplatnicExt4843\",\n \"properties\": {},\n \"resourceGroup\": \"xplatTestGExtension9085\"\n }\n ]\n },\n \"osProfile\": {\n \"adminUsername\": \"azureuser\",\n \"computerName\": \"xplatvmExt1314\",\n \"secrets\": [],\n \"windowsConfiguration\": {\n \"enableAutomaticUpdates\": true,\n \"provisionVMAgent\": true\n }\n },\n \"provisioningState\": \"Succeeded\",\n \"storageProfile\": {\n \"dataDisks\": [],\n \"imageReference\": {\n \"offer\": \"WindowsServerEssentials\",\n \"publisher\": \"MicrosoftWindowsServerEssentials\",\n \"sku\": \"WindowsServerEssentials\",\n \"version\": \"1.0.20131018\"\n },\n \"osDisk\": {\n \"caching\": \"ReadWrite\",\n \"createOption\": \"FromImage\",\n \"name\": \"cli1eaed78b36def353-os-1453419539945\",\n \"osType\": \"Windows\",\n \"vhd\": {\n \"uri\": \"https://xplatstoragext4633.blob.core.windows.net/xplatstoragecntext1789/cli1eaed78b36def353-os-1453419539945.vhd\"\n }\n }\n },\n \"vmId\": \"0a46768d-a544-4d4c-afdc-92651103ee16\"\n },\n \"resourceGroup\": \"XPLATTESTGEXTENSION9085\",\n \"tags\": {},\n \"type\": \"Microsoft.Compute/virtualMachines\"\n}\n" } \ No newline at end of file diff --git a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/recordings/test_resource_show_under_group.yaml b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/recordings/test_resource_show_under_group.yaml new file mode 100644 index 000000000..8484618ef --- /dev/null +++ b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/recordings/test_resource_show_under_group.yaml @@ -0,0 +1,130 @@ +interactions: +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.5.0 requests/2.9.1 msrest/0.2.0 msrest_azure/0.2.1 resourcemanagementclient/2015-11-01 + Azure-SDK-For-Python AZURECLI_0.0.32] + accept-language: [en-US] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute?api-version=2015-11-01 + response: + body: + string: !!binary | + H4sIAAAAAAAEAO29B2AcSZYlJi9tynt/SvVK1+B0oQiAYBMk2JBAEOzBiM3mkuwdaUcjKasqgcpl + VmVdZhZAzO2dvPfee++999577733ujudTif33/8/XGZkAWz2zkrayZ4hgKrIHz9+fB8/In7xR8Xs + o0cf3W3Wk2ZaF6u2qJbN3Z3J7vmn+w92t3cn5zvb+7NZtp3l03vb08nDvQd75zsP7z/cubuqq8ti + ltfN3S+KaV011Xk7PqkWq3WbfzT6aJkt8maVTXOCHvs+W7fzqi5+kKHHjx794o+y1aospvznGVD6 + dCf/dDr79MH2w+nBdHv/4f3d7YeTe9PtvXvTvfvZ3u6nD7NzglNXZf40Py+WhX0z33/wYCebTrYJ + 15ywnx5sHzw4v7e9u3e+v599uru3t7f/0S+hV/OmWtfT/M31Km8+evS9Xxx8QoCyy6wos0lRFu31 + 67xtqLuyEhTR/qPTrGnTr17Tx/pbuke/fzfn3+m3k3zZ1lkpf7yo6naeBh+9rogI4UfS6nRdV4SB + wrJ/cS/HTZHR7/xu7n3wnWyVLVM0sX/gbfrjeN2ggyIz37oPLBT69Emd/aAo5SP6k3+mZ8sZQzdI + mr8BWv/4Pk3mqvhJYgRDl72d3U+3d+5t39uhlvTH/e2dT7d379s/6H+726s6vyzyK7w+JWyZygXm + 4aMTYpbmlU7F53W1Xpk/vqgu81HK37/2GNb/mia2N4+XRd2us/KLbDovltTFj6bR/A3Q+gfNw/+3 + pvFu/q7Nl4Ltj2bU/A3Q+gdNyf+nZvT1NCvzH+lZvGL/Bmj9g+bjm53OF9XyfWblR/IG6AZJ8zdA + 6x9E4W92gliejAz9LMrb3fDzH03vz8r0vsd8LPP2qqrfni3bvD4nH/pHM/JzPSPh5z+aIfqpk+CG + Yv4GaP3jZ2GGHJVDiv9sdnWXaFzLr/S2/RidgGwyPfrbj+aZ6UIk/qaIf7l4XfzgRxJGSJq/AVr/ + +Fml/LrJLn5EeELS/A3Q+sfPKuFX60lZNHMCTm/bj9EJxiI0099+RHymC5H4w4hPw/2RijdImr8B + Wv/4WSB516mibi6WVdMWU/K52mJ58fNpKqL03d/eof/t3op6i7yti6nLhf+IeJZ49HWdXxQAA2q8 + bjNag3j00Sv+LK/z2Ue/5P8BmyM4hgkZAAA= + headers: + Cache-Control: [no-cache] + Content-Encoding: [gzip] + Content-Length: ['881'] + Content-Type: [application/json; charset=utf-8] + Date: ['Fri, 29 Apr 2016 19:56:00 GMT'] + Expires: ['-1'] + Pragma: [no-cache] + Strict-Transport-Security: [max-age=31536000; includeSubDomains] + Vary: [Accept-Encoding] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.5.0 requests/2.9.1 msrest/0.2.0 msrest_azure/0.2.1 resourcemanagementclient/2015-11-01 + Azure-SDK-For-Python AZURECLI_0.0.32] + accept-language: [en-US] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/XPLATTESTGEXTENSION9085/providers/Microsoft.Compute/virtualMachines/xplatvmExt1314?api-version=2016-03-30 + response: + body: + string: !!binary | + H4sIAAAAAAAEAO29B2AcSZYlJi9tynt/SvVK1+B0oQiAYBMk2JBAEOzBiM3mkuwdaUcjKasqgcpl + VmVdZhZAzO2dvPfee++999577733ujudTif33/8/XGZkAWz2zkrayZ4hgKrIHz9+fB8/In7xb5yk + 6UerulrldVvkzUePUv6IPrxcnM3oz492sv1PH3x6MNvO7u/vb+/P9qfb2flsuv1w79P7u7s79/J8 + 99OPRvrSPKtnV1mdv6yr86LM6X0FR99dLl4XP8BHH71us+WMWv7+x7sfyde/xABo2qrOLqLvFwv6 + 4lV+ntf5chp8RV+u1pOyaOZ5TZ9/9EUxraumOm+/Wyxn1VXzOq8v8/q0afJlW2RlY9DF81F1ThDx + 1m0aN2/Xt21K3zRFtUTz3fHOeG9n997uzu6BDtgNmZpWzdOieUst/RFVzZvrFYZpegugL7MFfzct + i908y2cPDib3Pp3l5/fu39uumu3d/fv39ncf3r/38OH+/eDFaZ1nbf7lqlXcntXV4gyUDVpdzjH3 + Hjr02bou6LOP5m27ah7dvftuVWatTte7dv/Te/fGk7KajKdVnY+vBOXxMm+DhtNlS413Hxw8vHsb + zMfAwyHhSEboTLPpvFheAKVXeTb7bl20uW3rWn40y9oM5AVvf+/78rH5mogc47RptVit27x+oUTm + EVwuTgnze7v7jlAfZbNFsfyqyWszHdkP1nW+pg+8RkqLk2p5Xlys60wpb7ujJiSAlwW45Se/OL4g + ZqKv23qdWxjUJF9mkzI/XrfVgiBMv1rRuFhe0dC0M+Oi9k1OM92iQW/QNClXVf3WG7n56Iympz7P + pgD8vV8MtKxe+MW/ZPRRQUzx0d1mPWmmdcEc1Nzdmeyef7r/YHd7d3K+s70/m2XbWT69tz2dPNx7 + sHe+8/D+w527dd5U63qaf15X61UjHPEmb9rPiaT5EgN/uHNw/y71d1nMSG7uWgkevxDM7vYwFCjL + Ykow9g/27330S75vRzgrsotl1RCdovM7qar2qWvif0ffCqVpqExaBYnHKKevvqYgOO6UXyy6PG5Q + gfiZdCPxMYF/vZ5O83xGiKCVtP0IM5B+E1Pwe798fvzmzenrN5+f/t5vTl+8PvvyxeAUnIg43L0s + 6nadlV+w4JkJ6IiFVUzRL1vVaDfC1vZlNSVmZ3H5iNBv53nWtFlTZPp9m13w7BFBf8n/A4L7AA3L + BgAA + headers: + Cache-Control: [no-cache] + Content-Encoding: [gzip] + Content-Type: [application/json; charset=utf-8] + Date: ['Fri, 29 Apr 2016 19:56:01 GMT'] + Expires: ['-1'] + Pragma: [no-cache] + Server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + Strict-Transport-Security: [max-age=31536000; includeSubDomains] + Vary: [Accept-Encoding] + status: {code: 200, message: OK} +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.5.0 requests/2.9.1 msrest/0.2.0 msrest_azure/0.2.1 resourcemanagementclient/2015-11-01 + Azure-SDK-For-Python AZURECLI_0.0.32] + accept-language: [en-US] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/XPLATTESTGEXTENSION9085/providers/Microsoft.Compute//virtualMachines/xplatvmExt1314?api-version=2016-03-30 + response: + body: + string: !!binary | + H4sIAAAAAAAEAO29B2AcSZYlJi9tynt/SvVK1+B0oQiAYBMk2JBAEOzBiM3mkuwdaUcjKasqgcpl + VmVdZhZAzO2dvPfee++999577733ujudTif33/8/XGZkAWz2zkrayZ4hgKrIHz9+fB8/In7xb5yk + 6UerulrldVvkzUePUv6IPrxcnM3oz492sv1PH3x6MNvO7u/vb+/P9qfb2flsuv1w79P7u7s79/J8 + 99OPRvrSPKtnV1mdv6yr86LM6X0FR99dLl4XP8BHH71us+WMWv7+x7sfyde/xABo2qrOLqLvFwv6 + 4lV+ntf5chp8RV+u1pOyaOZ5TZ9/9EUxraumOm+/Wyxn1VXzOq8v8/q0afJlW2RlY9DF81F1ThDx + 1m0aN2/Xt21K3zRFtUTz3fHOeG9n997uzu6BDtgNmZpWzdOieUst/RFVzZvrFYZpegugL7MFfzct + i908y2cPDib3Pp3l5/fu39uumu3d/fv39ncf3r/38OH+/eDFaZ1nbf7lqlXcntXV4gyUDVpdzjH3 + Hjr02bou6LOP5m27ah7dvftuVWatTte7dv/Te/fGk7KajKdVnY+vBOXxMm+DhtNlS413Hxw8vHsb + zMfAwyHhSEboTLPpvFheAKVXeTb7bl20uW3rWn40y9oM5AVvf+/78rH5mogc47RptVit27x+oUTm + EVwuTgnze7v7jlAfZbNFsfyqyWszHdkP1nW+pg+8RkqLk2p5Xlys60wpb7ujJiSAlwW45Se/OL4g + ZqKv23qdWxjUJF9mkzI/XrfVgiBMv1rRuFhe0dC0M+Oi9k1OM92iQW/QNClXVf3WG7n56Iympz7P + pgD8vV8MtKxe+MW/ZPRRQUzx0d1mPWmmdcEc1Nzdmeyef7r/YHd7d3K+s70/m2XbWT69tz2dPNx7 + sHe+8/D+w527dd5U63qaf15X61UjHPEmb9rPiaT5EgN/uHNw/y71d1nMSG7uWgkevxDM7vYwFCjL + Ykow9g/27330S75vRzgrsotl1RCdovM7qar2qWvif0ffCqVpqExaBYnHKKevvqYgOO6UXyy6PG5Q + gfiZdCPxMYF/vZ5O83xGiKCVtP0IM5B+E1Pwe798fvzmzenrN5+f/t5vTl+8PvvyxeAUnIg43L0s + 6nadlV+w4JkJ6IiFVUzRL1vVaDfC1vZlNSVmZ3H5iNBv53nWtFlTZPp9m13w7BFBf8n/A4L7AA3L + BgAA + headers: + Cache-Control: [no-cache] + Content-Encoding: [gzip] + Content-Type: [application/json; charset=utf-8] + Date: ['Fri, 29 Apr 2016 19:56:01 GMT'] + Expires: ['-1'] + Pragma: [no-cache] + Server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + Strict-Transport-Security: [max-age=31536000; includeSubDomains] + Vary: [Accept-Encoding] + status: {code: 200, message: OK} +version: 1 diff --git a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/test_api_check.py b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/test_api_check.py index c3d346d93..38d756ae8 100644 --- a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/test_api_check.py +++ b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/test_api_check.py @@ -24,22 +24,22 @@ class TestApiCheck(unittest.TestCase): def test_resolve_api_max_priority_option(self): """ Verifies the --api-version parameter has maximum priority. """ - args = {'api-version': '2015-01-01', 'resource-type': 'Mock/test'} + args = {'api-version': '2015-01-01', 'resource_type': 'Mock/test'} self.assertEqual(resolve_api_version(args, self._get_mock_client()), "2015-01-01") def test_resolve_api_provider_backup(self): """ Verifies provider is used as backup if api-version not specified. """ - args = {'resource-type': 'Mock/test'} + args = {'resource_type': 'Mock/test'} self.assertEqual(resolve_api_version(args, self._get_mock_client()), "2016-01-01") def test_resolve_api_provider_with_parent_backup(self): """ Verifies provider (with parent) is used as backup if api-version not specified. """ - args = {'resource-type': 'Mock/bar', 'parent': 'foo/testfoo123'} + args = {'resource_type': 'Mock/bar', 'parent': 'foo/testfoo123'} self.assertEqual(resolve_api_version(args, self._get_mock_client()), "1999-01-01") def test_resolve_api_all_previews(self): """ Verifies most recent preview version returned only if there are no non-preview versions. """ - args = {'resource-type': 'Mock/preview'} + args = {'resource_type': 'Mock/preview'} self.assertEqual(resolve_api_version(args, self._get_mock_client()), "2005-01-01-preview") def _get_mock_client(self): diff --git a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/test_resource_list_odata_filter.py b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/test_resource_list_odata_filter.py index 5b5a1b0f2..2d8592388 100644 --- a/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/test_resource_list_odata_filter.py +++ b/src/command_modules/azure-cli-resource/azure/cli/command_modules/resource/tests/test_resource_list_odata_filter.py @@ -23,30 +23,30 @@ class TestListResources(unittest.TestCase): 'tag': 'foo' } filter = _list_resources_odata_filter_builder(args) - self.assertEquals(filter, "tagname eq 'foo'") + self.assertEqual(filter, "tagname eq 'foo'") def test_tag_name_starts_with(self): args = { 'tag': 'f*' } filter = _list_resources_odata_filter_builder(args) - self.assertEquals(filter, "startswith(tagname, 'f')") + self.assertEqual(filter, "startswith(tagname, 'f')") def test_tag_name_value_equals(self): args = { 'tag': 'foo=bar' } filter = _list_resources_odata_filter_builder(args) - self.assertEquals(filter, "tagname eq 'foo' and tagvalue eq 'bar'") + self.assertEqual(filter, "tagname eq 'foo' and tagvalue eq 'bar'") - def test_name_location_equals(self): + def test_name_location_with_resource_type_equals(self): args = { 'name': 'wonky', 'location': 'dory', - 'resourcetype': 'resource/type' + 'resource_type': 'resource/type' } filter = _list_resources_odata_filter_builder(args) - self.assertEquals(filter, "name eq 'wonky' and location eq 'dory' and resourceType eq 'resource/type'") + self.assertEqual(filter, "name eq 'wonky' and location eq 'dory' and resourceType eq 'resource/type'") def test_name_location_equals(self): args = { diff --git a/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/custom.py b/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/custom.py index eab00107c..ebd42e094 100644 --- a/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/custom.py +++ b/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/custom.py @@ -7,7 +7,7 @@ except ImportError: from azure.mgmt.compute.models import DataDisk from azure.mgmt.compute.models.compute_management_client_enums import DiskCreateOptionTypes from azure.cli._locale import L -from azure.cli.commands import CommandTable, LongRunningOperation +from azure.cli.commands import CommandTable, LongRunningOperation, RESOURCE_GROUP_ARG_NAME from azure.cli.commands._command_creation import get_mgmt_service_client from azure.mgmt.compute import ComputeManagementClient, ComputeManagementClientConfiguration @@ -22,7 +22,7 @@ def vm_getter(args): ''' Retreive a VM based on the `args` passed in. ''' client = _compute_client_factory(args) - result = client.virtual_machines.get(args.get('resourcegroup'), args.get('vm_name')) + result = client.virtual_machines.get(args.get(RESOURCE_GROUP_ARG_NAME), args.get('vm_name')) return result def vm_setter(args, instance, start_msg, end_msg): @@ -31,7 +31,7 @@ def vm_setter(args, instance, start_msg, end_msg): instance.resources = None # Issue: https://github.com/Azure/autorest/issues/934 client = _compute_client_factory(args) poller = client.virtual_machines.create_or_update( - resource_group_name=args.get('resourcegroup'), + resource_group_name=args.get(RESOURCE_GROUP_ARG_NAME), vm_name=args.get('vm_name'), parameters=instance) return LongRunningOperation(start_msg, end_msg)(poller) @@ -65,7 +65,7 @@ def patches_vm(start_msg, finish_msg): @command_table.option(**PARAMETER_ALIASES['optional_resource_group_name']) def list_vm(args): ccf = _compute_client_factory(args) - group = args.get('resourcegroup') + group = args.get(RESOURCE_GROUP_ARG_NAME) vm_list = ccf.virtual_machines.list(resource_group_name=group) if group else \ ccf.virtual_machines.list_all() return list(vm_list) diff --git a/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/command_specs.py b/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/command_specs.py index e39b5612b..763fb336b 100644 --- a/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/command_specs.py +++ b/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/command_specs.py @@ -6,5 +6,9 @@ TEST_DEF = [ { 'test_name': 'vm_usage_list_westus', 'command': 'vm usage list --location westus --output json', + }, + { + 'test_name': 'vm_list_from_group', + 'command': 'vm list --resource-group XPLATTESTGEXTENSION9085', } ] diff --git a/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/recordings/expected_results.res b/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/recordings/expected_results.res index fe91ef005..f5c583f1d 100644 --- a/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/recordings/expected_results.res +++ b/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/recordings/expected_results.res @@ -1,3 +1,4 @@ { + "test_vm_list_from_group": "Availability Set : None\nId : /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/XPLATTESTGEXTENSION9085/providers/Microsoft.Compute/virtualMachines/xplatvmExt1314\nInstance View : None\nLicense Type : None\nLocation : southeastasia\nName : xplatvmExt1314\nPlan : None\nProvisioning State : Succeeded\nResource Group : XPLATTESTGEXTENSION9085\nResources : None\nType : Microsoft.Compute/virtualMachines\nDiagnostics Profile :\n Boot Diagnostics :\n Enabled : True\n Storage Uri : https://xplatstoragext4633.blob.core.windows.net/\nHardware Profile :\n Vm Size : Standard_A1\nNetwork Profile :\n Network Interfaces :\n Id : /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/xplatTestGExtension9085/providers/Microsoft.Network/networkInterfaces/xplatnicExt4843\n Primary : None\n Resource Group : xplatTestGExtension9085\nOs Profile :\n Admin Password : None\n Admin Username : azureuser\n Computer Name : xplatvmExt1314\n Custom Data : None\n Linux Configuration : None\n Secrets :\n None\n Windows Configuration :\n Additional Unattend Content : None\n Enable Automatic Updates : True\n Provision Vm Agent : True\n Time Zone : None\n Win Rm : None\nStorage Profile :\n Data Disks :\n None\n Image Reference :\n Offer : WindowsServerEssentials\n Publisher : MicrosoftWindowsServerEssentials\n Sku : WindowsServerEssentials\n Version : 1.0.20131018\n Os Disk :\n Caching : ReadWrite\n Create Option : fromImage\n Disk Size Gb : None\n Encryption Settings : None\n Image : None\n Name : cli1eaed78b36def353-os-1453419539945\n Os Type : Windows\n Vhd :\n Uri : https://xplatstoragext4633.blob.core.windows.net/xplatstoragecntext1789/cli1eaed78b36def353-os-1453419539945.vhd\nTags :\n None\n\n\n", "test_vm_usage_list_westus": "[\n {\n \"currentValue\": 0,\n \"limit\": 2000,\n \"name\": {\n \"localizedValue\": \"Availability Sets\",\n \"value\": \"availabilitySets\"\n },\n \"unit\": \"Count\"\n },\n {\n \"currentValue\": 7,\n \"limit\": 100,\n \"name\": {\n \"localizedValue\": \"Total Regional Cores\",\n \"value\": \"cores\"\n },\n \"unit\": \"Count\"\n },\n {\n \"currentValue\": 5,\n \"limit\": 10000,\n \"name\": {\n \"localizedValue\": \"Virtual Machines\",\n \"value\": \"virtualMachines\"\n },\n \"unit\": \"Count\"\n },\n {\n \"currentValue\": 0,\n \"limit\": 50,\n \"name\": {\n \"localizedValue\": \"Virtual Machine Scale Sets\",\n \"value\": \"virtualMachineScaleSets\"\n },\n \"unit\": \"Count\"\n },\n {\n \"currentValue\": 1,\n \"limit\": 100,\n \"name\": {\n \"localizedValue\": \"Standard D Family Cores\",\n \"value\": \"standardDFamily\"\n },\n \"unit\": \"Count\"\n },\n {\n \"currentValue\": 6,\n \"limit\": 100,\n \"name\": {\n \"localizedValue\": \"Standard A0-A7 Family Cores\",\n \"value\": \"standardA0_A7Family\"\n },\n \"unit\": \"Count\"\n }\n]\n" } \ No newline at end of file diff --git a/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/recordings/test_vm_list_from_group.yaml b/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/recordings/test_vm_list_from_group.yaml new file mode 100644 index 000000000..59227b100 --- /dev/null +++ b/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/recordings/test_vm_list_from_group.yaml @@ -0,0 +1,45 @@ +interactions: +- request: + body: null + headers: + Accept: [application/json] + Accept-Encoding: ['gzip, deflate'] + Connection: [keep-alive] + Content-Type: [application/json; charset=utf-8] + User-Agent: [python/3.5.0 requests/2.9.1 msrest/0.2.0 msrest_azure/0.2.1 computemanagementclient/2015-06-15 + Azure-SDK-For-Python AZURECLI_0.0.32] + accept-language: [en-US] + method: GET + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/XPLATTESTGEXTENSION9085/providers/Microsoft.Compute/virtualMachines?api-version=2015-06-15 + response: + body: + string: !!binary | + H4sIAAAAAAAEAO29B2AcSZYlJi9tynt/SvVK1+B0oQiAYBMk2JBAEOzBiM3mkuwdaUcjKasqgcpl + VmVdZhZAzO2dvPfee++999577733ujudTif33/8/XGZkAWz2zkrayZ4hgKrIHz9+fB8/In7xb5yk + 6UeXWbnOP3qUfg9/pSl/iOejVV2t8rot8oa+tR/TF5eLsxl99NFOtv/pg08PZtvZ/f397f3Z/nQ7 + O59Ntx/ufXp/d3fnXp7vfvrRyHtxntWzq6zOX9bVeVGiUw8sfX+5eF38AB9/9LrNljNq/fsf737k + mvwSH1jTVnV2MQirWNCXr/LzvM6X097X1GC1npRFM89r+u6jL4ppXTXVefvdYjmrrprXeX2Z16dN + ky/bIisbfxh4PqrOCTLevO0Lzdv1+zSnb5uiWuKV3fHOeG9n997uzu6BR4yQHPRK1Twtmrf0Rnek + VfPmegUSmN57vS2zBX8/LYvdPMtnDw4m9z6d5ef37t/brprt3f379/Z3H96/9/Dh/v3ey9M6z9r8 + y1Wr+D6rq8UZqN9reTkH33TQo8/XdUGffzRv21Xz6O7dd6sya3V637X7n967N56U1WQ8rep8fCVD + GC/zNmg4XbbUePfBwcO7txnFGLiEiITkJLSm2XReLC+A2qs8m323Lto8eCd846NZ1maYAsjL977v + vvKb0WQMcey0WqzWbV6/0Mng0V0uTmlU93b3Q2J+lM0WxfKrJq/N1GU/WNf5mj7oNFR6nVTL8+Ji + XWc6S0HX1IyE/bIAx/3kF8cXxJTUpK3XeQCLmuXLbFLmx+u2WhCk6VcrGjPrBzT22/pjpveanLik + RcNBwtCEXlX1W4865qMzmtr6PJuio+/9YqBq9dIv/iWjjwpiqo/uNutJM60L5sLm7s5k9/zT/Qe7 + 27uT853t/dks287y6b3t6eTh3oO9852H9x/u3K3zplrX0/zzulqvGuGmN3nTfk4kz5cgxsOdg/t3 + qb/LYkbyeNdqifELwexuD0OBsiymBGP/YP/eR7/k+8EoZ0V2sawaot0gH0yqqn3qmnW/pxYyCzRs + JrsHHo9RjF99TaEKOdz9EQyDaQIKkXyQria5oK5er6fTPJ8RYqale+cjzFL6TUzT7/3y+fGbN6ev + 33x++nu/OX3x+uzLF4PTdCIidfeyqNt1Vn7BAm0mKSJaVhEONmhVk97Yh/dOWU1JWFjsPqKhtPM8 + a9qsKTKvTZtd8EwrwfkHScov+X8AMvMTLaQHAAA= + headers: + Cache-Control: [no-cache] + Content-Encoding: [gzip] + Content-Type: [application/json; charset=utf-8] + Date: ['Fri, 29 Apr 2016 19:53:17 GMT'] + Expires: ['-1'] + Pragma: [no-cache] + Server: [Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0] + Strict-Transport-Security: [max-age=31536000; includeSubDomains] + Vary: [Accept-Encoding] + status: {code: 200, message: OK} +version: 1 From e4b71300b0e26fcf7fee503270027e54a0ae2580 Mon Sep 17 00:00:00 2001 From: Yugang Wang Date: Mon, 2 May 2016 13:50:52 -0700 Subject: [PATCH 3/3] load arg help text from new lines (#197) --- src/azure/cli/commands/__init__.py | 4 +-- src/azure/cli/commands/_auto_command.py | 46 +++++++++++++++++++----- src/azure/cli/tests/test_autocommand.py | 47 ++++++++++++++++++++++--- 3 files changed, 82 insertions(+), 15 deletions(-) diff --git a/src/azure/cli/commands/__init__.py b/src/azure/cli/commands/__init__.py index c7525f232..4ea84bb5d 100644 --- a/src/azure/cli/commands/__init__.py +++ b/src/azure/cli/commands/__init__.py @@ -18,7 +18,7 @@ COMMON_PARAMETERS = { 'name': '--resource-group -g', 'dest': RESOURCE_GROUP_ARG_NAME, 'metavar': 'RESOURCEGROUP', - 'help': 'Name of resource group', + 'help': 'The name of the resource group.', 'required': True }, 'location': { @@ -30,7 +30,7 @@ COMMON_PARAMETERS = { 'deployment_name': { 'name': '--deployment-name', 'metavar': 'DEPLOYMENTNAME', - 'help': 'Name of the resource deployment', + 'help': 'The name of the resource deployment.', 'default': 'azurecli' + str(time.time()) + str(random.randint(0, 10000000)), 'required': False } diff --git a/src/azure/cli/commands/_auto_command.py b/src/azure/cli/commands/_auto_command.py index 3b16e051a..159c618d7 100644 --- a/src/azure/cli/commands/_auto_command.py +++ b/src/azure/cli/commands/_auto_command.py @@ -1,4 +1,5 @@ from __future__ import print_function +import re import inspect from msrest.paging import Paged from msrest.exceptions import ClientException @@ -54,13 +55,37 @@ def _make_func(client_factory, member_path, return_type_or_func, unbound_func): return call_client -def _option_description(operation, arg): +def _option_descriptions(operation): """Pull out parameter help from doccomments of the command """ - # TODO: We are currently doing this for every option/argument. - # We should do it (at most) once for a given command... - return ' '.join(l.split(':')[-1] for l in inspect.getdoc(operation).splitlines() - if l.startswith(':param') and arg + ':' in l) + lines = inspect.getdoc(operation).splitlines() + option_descs = {} + index = 0 + while index < len(lines): + l = lines[index] + regex = r'\s*(:param)\s+(.+)\s*:(.*)' + match = re.search(regex, l) + if match: + # 'arg name' portion might have type info, we don't need it + arg_name = str.split(match.group(2))[-1] + arg_desc = match.group(3).strip() + #look for more descriptions on subsequent lines + index += 1 + while index < len(lines): + temp = lines[index].strip() + if temp.startswith(':'): + break + else: + if temp: + arg_desc += (' ' + temp) + index += 1 + + option_descs[arg_name] = arg_desc + else: + index += 1 + + return option_descs + #pylint: disable=too-many-arguments def build_operation(command_name, @@ -85,13 +110,18 @@ def build_operation(command_name, args = sig.args options = [] - for arg in [a for a in args if not a in EXCLUDED_PARAMS]: + + option_helps = _option_descriptions(op.operation) + filtered_args = [a for a in args if not a in EXCLUDED_PARAMS] + for arg in filtered_args: try: # this works in python3 default = args[arg].default required = default == inspect.Parameter.empty #pylint: disable=no-member except TypeError: - arg_defaults = dict(zip(sig.args[-len(sig.defaults):], sig.defaults)) + arg_defaults = (dict(zip(sig.args[-len(sig.defaults):], sig.defaults)) + if sig.defaults + else {}) default = arg_defaults.get(arg) required = arg not in arg_defaults @@ -109,7 +139,7 @@ def build_operation(command_name, 'required': required, 'default': default, 'dest': arg, - 'help': _option_description(op.operation, arg), + 'help': option_helps.get(arg), 'action': action } parameter.update(COMMON_PARAMETERS.get(arg, {})) diff --git a/src/azure/cli/tests/test_autocommand.py b/src/azure/cli/tests/test_autocommand.py index eded04161..8c69dee12 100644 --- a/src/azure/cli/tests/test_autocommand.py +++ b/src/azure/cli/tests/test_autocommand.py @@ -1,7 +1,7 @@ import logging import unittest -from azure.cli.commands._auto_command import build_operation +from azure.cli.commands._auto_command import build_operation, _option_descriptions from azure.cli.commands import CommandTable from azure.cli.commands._auto_command import AutoCommandDefinition from azure.cli.main import main as cli @@ -27,7 +27,8 @@ class Test_autocommand(unittest.TestCase): :type resource_group_name: str :param vm_name: The name of the virtual machine. :type vm_name: str - :param opt_param: Used to verify auto-command correctly identifies optional params + :param opt_param: Used to verify auto-command correctly + identifies optional params. :type opt_param: object :param expand: The expand expression to apply on the operation. :type expand: str @@ -53,9 +54,10 @@ class Test_autocommand(unittest.TestCase): self.assertEqual(command_metadata['name'], 'test autocommand sample-vm-get', 'Unexpected command name...') self.assertEqual(len(command_metadata['arguments']), 4, 'We expected exactly 4 arguments') some_expected_arguments = [ - {'name': '--resource-group -g', 'dest': 'resource_group_name', 'required': True}, - {'name': '--vm-name', 'dest': 'vm_name', 'required': True}, - {'name': '--opt-param', 'required': False}, + {'name': '--resource-group -g', 'dest': 'resource_group_name', 'required': True, 'help':'The name of the resource group.'}, + {'name': '--vm-name', 'dest': 'vm_name', 'required': True, 'help': 'The name of the virtual machine.'}, + {'name': '--opt-param', 'required': False, 'help': 'Used to verify auto-command correctly identifies optional params.'}, + {'name': '--expand', 'required': False, 'help': 'The expand expression to apply on the operation.'}, ] for probe in some_expected_arguments: @@ -144,5 +146,40 @@ class Test_autocommand(unittest.TestCase): command_metadata = list(command_table.values())[0] self.assertEqual(command_metadata['name'], 'test autocommand woot', 'Unexpected command name...') + def test_autocommand_build_argument_help_text(self): + def sample_sdk_method_with_weired_docstring(self, param_a, param_b, param_c): + """ + An operation with nothing good. + + :param dict param_a: + :param param_b: The name + of + nothing. + :param param_c: The name + of + + nothing2. + """ + command_table = CommandTable() + build_operation("test autocommand", + "", + None, + [ + AutoCommandDefinition(sample_sdk_method_with_weired_docstring, None) + ], + command_table) + + command_metadata = list(command_table.values())[0] + self.assertEqual(len(command_metadata['arguments']), 3, 'We expected exactly 3 arguments') + some_expected_arguments = [ + {'name': '--param-a', 'dest': 'param_a', 'required': True, 'help': ''}, + {'name': '--param-b', 'dest': 'param_b', 'required': True, 'help': 'The name of nothing.'}, + {'name': '--param-c', 'dest': 'param_c', 'required': True, 'help': 'The name of nothing2.'}, + ] + + for probe in some_expected_arguments: + existing = next(arg for arg in command_metadata['arguments'] if arg['name'] == probe['name']) + self.assertDictContainsSubset(probe, existing) + if __name__ == '__main__': unittest.main()