From 704bcd0ea607749c8907fde9c7539482ccf73e75 Mon Sep 17 00:00:00 2001 From: Yevgen Antymyrov Date: Thu, 24 Nov 2022 19:48:13 +0100 Subject: [PATCH 1/2] fix accidental side-effect, plus make sure this function handles both types of imput data: lists and dict. The current one only supports dicts while unit test explicitely passing list of dicts as one of 6 cases --- .../azure/cli/command_modules/appservice/custom.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/azure-cli/azure/cli/command_modules/appservice/custom.py b/src/azure-cli/azure/cli/command_modules/appservice/custom.py index bd2bad6b5f7..c541aa8b0f4 100644 --- a/src/azure-cli/azure/cli/command_modules/appservice/custom.py +++ b/src/azure-cli/azure/cli/command_modules/appservice/custom.py @@ -1619,10 +1619,13 @@ def _filter_for_container_settings(cmd, resource_group_name, name, settings, # TODO: remove this when #3660(service tracking issue) is resolved def _mask_creds_related_appsettings(settings): - for x in [x1 for x1 in settings if x1 in APPSETTINGS_TO_MASK]: - settings[x] = None - return settings + if isinstance(settings, list): + return [ + {**x, **{'value': None if x['name'] in APPSETTINGS_TO_MASK else x['value']}} + for x in settings + ] + return {k: None if k in APPSETTINGS_TO_MASK else v for k, v in settings.items()} def add_hostname(cmd, resource_group_name, webapp_name, hostname, slot=None): from azure.mgmt.web.models import HostNameBinding From a0ef00c5485ccde8bfbbd9b5cb57625de7995530 Mon Sep 17 00:00:00 2001 From: Yevgen Antymyrov Date: Thu, 24 Nov 2022 20:12:25 +0100 Subject: [PATCH 2/2] fix a flake8 issue --- src/azure-cli/azure/cli/command_modules/appservice/custom.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/azure-cli/azure/cli/command_modules/appservice/custom.py b/src/azure-cli/azure/cli/command_modules/appservice/custom.py index c541aa8b0f4..ee4754d8fbc 100644 --- a/src/azure-cli/azure/cli/command_modules/appservice/custom.py +++ b/src/azure-cli/azure/cli/command_modules/appservice/custom.py @@ -1627,6 +1627,7 @@ def _mask_creds_related_appsettings(settings): return {k: None if k in APPSETTINGS_TO_MASK else v for k, v in settings.items()} + def add_hostname(cmd, resource_group_name, webapp_name, hostname, slot=None): from azure.mgmt.web.models import HostNameBinding client = web_client_factory(cmd.cli_ctx)