From e45343da339463072ae5a241e7da302fe075eb46 Mon Sep 17 00:00:00 2001 From: Lukasz Stempniewicz Date: Tue, 7 Nov 2017 12:47:08 -0800 Subject: [PATCH 1/3] Fix appservice list-locations --- src/command_modules/azure-cli-appservice/HISTORY.rst | 1 + .../azure/cli/command_modules/appservice/commands.py | 2 +- .../azure/cli/command_modules/appservice/custom.py | 11 ++++++++++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/command_modules/azure-cli-appservice/HISTORY.rst b/src/command_modules/azure-cli-appservice/HISTORY.rst index 8b98de85aae..f7211c503d8 100644 --- a/src/command_modules/azure-cli-appservice/HISTORY.rst +++ b/src/command_modules/azure-cli-appservice/HISTORY.rst @@ -10,6 +10,7 @@ Release History * webapp: removing the 'storage' option from --web-server-logging since this is not working * `deployment user set`: logged more informative error messages. * functionapp: add support for creating Linux function apps +* appservice: fix list-locations 0.1.19 ++++++ diff --git a/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/commands.py b/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/commands.py index fe332b5f5a3..8937834c32e 100644 --- a/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/commands.py +++ b/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/commands.py @@ -154,7 +154,7 @@ def _polish_bad_errors(ex): 'azure.mgmt.web.operations.app_service_plans_operations#AppServicePlansOperations.create_or_update', custom_function_op=custom_path + 'update_app_service_plan', setter_arg_name='app_service_plan', factory=cf_plans) - cli_command(__name__, 'appservice list-locations', 'azure.mgmt.web.web_site_management_client#WebSiteManagementClient.list_geo_regions', cf_web_client, transform=transform_list_location_output) + cli_command(__name__, 'appservice list-locations', custom_path + 'list_locations') cli_command(__name__, 'functionapp create', custom_path + 'create_function') cli_command(__name__, 'functionapp list', custom_path + 'list_function_app', table_transformer=transform_web_list_output) diff --git a/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py b/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py index f14e098c1d9..718bc9d5941 100644 --- a/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py +++ b/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py @@ -908,8 +908,10 @@ def _get_sku_name(tier): return 'BASIC' elif tier in ['S1', 'S2', 'S3']: return 'STANDARD' - elif tier in ['P1', 'P2', 'P3', 'P1V2', 'P2V2', 'P3V2']: + elif tier in ['P1', 'P2', 'P3']: return 'PREMIUM' + elif tier in ['P1V2', 'P2V2', 'P3V2']: + return 'PREMIUMV2' else: raise CLIError("Invalid sku(pricing tier), please refer to command help for valid values") @@ -1559,6 +1561,13 @@ def list_consumption_locations(): return [{'name': x.name.lower().replace(" ", "")} for x in regions] +def list_locations(sku, linux_workers_enabled=None): + client = web_client_factory() + full_sku = _get_sku_name(sku) + regions = client.list_geo_regions(full_sku, linux_workers_enabled) + return [{'name': x.name.lower().replace(" ", "")} for x in regions] + + def enable_zip_deploy(resource_group_name, name, src, slot=None): client = web_client_factory() user_name, password = _get_site_credential(client, resource_group_name, name) From f9eb9072329cc3d9825702f867af688cebf0844b Mon Sep 17 00:00:00 2001 From: Lukasz Stempniewicz Date: Wed, 8 Nov 2017 10:36:17 -0800 Subject: [PATCH 2/3] Fixed logic --- .../azure/cli/command_modules/appservice/commands.py | 3 +-- .../azure/cli/command_modules/appservice/custom.py | 6 ++++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/commands.py b/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/commands.py index 8937834c32e..43eed737b01 100644 --- a/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/commands.py +++ b/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/commands.py @@ -154,8 +154,7 @@ def _polish_bad_errors(ex): 'azure.mgmt.web.operations.app_service_plans_operations#AppServicePlansOperations.create_or_update', custom_function_op=custom_path + 'update_app_service_plan', setter_arg_name='app_service_plan', factory=cf_plans) - cli_command(__name__, 'appservice list-locations', custom_path + 'list_locations') - + cli_command(__name__, 'appservice list-locations', custom_path + 'list_locations', transform=transform_list_location_output) cli_command(__name__, 'functionapp create', custom_path + 'create_function') cli_command(__name__, 'functionapp list', custom_path + 'list_function_app', table_transformer=transform_web_list_output) cli_command(__name__, 'functionapp show', custom_path + 'show_webapp', exception_handler=empty_on_404, table_transformer=transform_web_output) diff --git a/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py b/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py index 718bc9d5941..b28a4026303 100644 --- a/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py +++ b/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py @@ -1558,14 +1558,16 @@ def _validate_and_get_connection_string(resource_group_name, storage_account): def list_consumption_locations(): client = web_client_factory() regions = client.list_geo_regions(sku='Dynamic') - return [{'name': x.name.lower().replace(" ", "")} for x in regions] + return [{'name': x.name.lower().replace(' ', '')} for x in regions] def list_locations(sku, linux_workers_enabled=None): client = web_client_factory() full_sku = _get_sku_name(sku) regions = client.list_geo_regions(full_sku, linux_workers_enabled) - return [{'name': x.name.lower().replace(" ", "")} for x in regions] + for x in regions: + x.name = x.name.lower().replace(' ', '') + return regions.current_page def enable_zip_deploy(resource_group_name, name, src, slot=None): From 0372e4bcea24d521ad731f1425bf123a55b82afe Mon Sep 17 00:00:00 2001 From: Lukasz Stempniewicz Date: Wed, 8 Nov 2017 14:03:26 -0800 Subject: [PATCH 3/3] Matching original output --- .../azure/cli/command_modules/appservice/custom.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py b/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py index b28a4026303..0cce69aa672 100644 --- a/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py +++ b/src/command_modules/azure-cli-appservice/azure/cli/command_modules/appservice/custom.py @@ -1564,10 +1564,7 @@ def list_consumption_locations(): def list_locations(sku, linux_workers_enabled=None): client = web_client_factory() full_sku = _get_sku_name(sku) - regions = client.list_geo_regions(full_sku, linux_workers_enabled) - for x in regions: - x.name = x.name.lower().replace(' ', '') - return regions.current_page + return client.list_geo_regions(full_sku, linux_workers_enabled) def enable_zip_deploy(resource_group_name, name, src, slot=None):