azure-cli
azure-cli copied to clipboard
[AppService] `az functionapp create`: Refactor consumption function app creation experience
Related command
az functionapp create
az functionapp plan create
Description
- Allow consumption plans to be created using the Az CLI
- Allow customers to pass an existing consumption plan when creating a new function app (currently we create the consumption plan for them)
- If customers do not provide an existing consumption plan, create one for them in the CLI instead of depending on the backend for the plan creation, and follow the same plan naming convention as the Portal.
Testing Guide
History Notes
[Component Name 1] BREAKING CHANGE: az command a
: Make some customer-facing breaking change
[Component Name 2] az command b
: Add some customer-facing feature
This checklist is used to make sure that common guidelines for a pull request are followed.
-
[x] The PR title and description has followed the guideline in Submitting Pull Requests.
-
[x] I adhere to the Command Guidelines.
-
[x] I adhere to the Error Handling Guidelines.
❌AzureCLI-FullTest
️✔️acr
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️acs
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️advisor
️✔️latest
️✔️3.11
️✔️3.9
️✔️ams
️✔️latest
️✔️3.11
️✔️3.9
️✔️apim
️✔️latest
️✔️3.11
️✔️3.9
️✔️appconfig
️✔️latest
️✔️3.11
️✔️3.9
❌appservice
❌latest
❌3.11
Type Test Case Error Message Line Failed test_functionapp_access_restriction_add self = <azure.cli.testsdk.base.ExecutionResult object at 0x7f0d27b54550>
cli_ctx = <azure.cli.core.mock.DummyCli object at 0x7f0d27f6a090>
command = 'functionapp create -g clitest.rg000001 -n cli-funcapp-nwr000003 --consumption-plan-location northeurope -s clitest000002 --functions-version 4'
expect_failure = False
def in_process_execute(self, cli_ctx, command, expect_failure=False):
from io import StringIO
from vcr.errors import CannotOverwriteExistingCassetteException
if command.startswith('az '):
command = command[3:]
stdout_buf = StringIO()
logging_buf = StringIO()
try:
# issue: stderr cannot be redirect in this form, as a result some failure information
# is lost when command fails.
> self.exit_code = cli_ctx.invoke(shlex.split(command), out_file=stdout_buf) or 0
src/azure-cli-testsdk/azure/cli/testsdk/base.py:302:
env/lib/python3.11/site-packages/knack/cli.py:245: in invoke
exit_code = self.exception_handler(ex)
src/azure-cli-core/azure/cli/core/init.py:127: in exception_handler
return handle_exception(ex)
src/azure-cli-testsdk/azure/cli/testsdk/patches.py:33: in handle_main_exception
raise ex
env/lib/python3.11/site-packages/knack/cli.py:233: in invoke
cmd_result = self.invocation.execute(args)
src/azure-cli-core/azure/cli/core/commands/init.py:664: in execute
raise ex
src/azure-cli-core/azure/cli/core/commands/init.py:731: in run_jobs_serially
results.append(self.run_job(expanded_arg, cmd_copy))
src/azure-cli-core/azure/cli/core/commands/init.py:723: in run_job
return cmd_copy.exception_handler(ex)
src/azure-cli/azure/cli/command_modules/appservice/commands.py:46: in ex_handler
raise ex
src/azure-cli-core/azure/cli/core/commands/init.py:701: in run_job
result = cmd_copy(params)
src/azure-cli-core/azure/cli/core/commands/init.py:334: in call
return self.handler(*args, **kwargs)
src/azure-cli-core/azure/cli/core/commands/command_operation.py:121: in handler
return op(**command_args)
src/azure-cli/azure/cli/command_modules/appservice/custom.py:4822: in create_functionapp
plan_info = create_consumption_plan(
src/azure-cli/azure/cli/command_modules/appservice/custom.py:4499: in create_consumption_plan
poller = client.app_service_plans.begin_create_or_update(resource_group_name, name, plan_def)
env/lib/python3.11/site-packages/azure/core/tracing/decorator.py:76: in wrapper_use_tracer
return func(*args, **kwargs)
env/lib/python3.11/site-packages/azure/mgmt/web/v2023_01_01/operations/app_service_plans_operations.py:1549: in begin_create_or_update
raw_result = self.create_or_update_initial(
env/lib/python3.11/site-packages/azure/mgmt/web/v2023_01_01/operations/app_service_plans_operations.py:1408: in create_or_update_initial
pipeline_response: PipelineResponse = self.client.pipeline.run( # pylint: disable=protected-access
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:213: in run
return first_node.send(pipeline_request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/mgmt/core/policies/base.py:47: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/policies/redirect.py:181: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/policies/retry.py:467: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/policies/authentication.py:115: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:108: in send
self.sender.send(request.http_request, **request.context.options),
env/lib/python3.11/site-packages/azure/core/pipeline/transport/requests_basic.py:338: in send
response = self.session.request( # type: ignore
env/lib/python3.11/site-packages/requests/sessions.py:589: in request
resp = self.send(prep, **send_kwargs)
env/lib/python3.11/site-packages/requests/sessions.py:703: in send
r = adapter.send(request, **kwargs)
env/lib/python3.11/site-packages/requests/adapters.py:486: in send
resp = conn.urlopen(
env/lib/python3.11/site-packages/urllib3/connectionpool.py:715: in urlopen
httplib_response = self.make_request(
env/lib/python3.11/site-packages/urllib3/connectionpool.py:458: in make_request
httplib_response = conn.getresponse(buffering=True)
self = <vcr.patch.VCRRequestsHTTPSConnection/mnt/vss/work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add.yaml object at 0x7f0d21520050>
= False, kwargs = {'buffering': True}
def getresponse(self, =False, **kwargs):
"""Retrieve the response"""
# Check to see if the cassette has a response for this request. If so,
# then return it
if self.cassette.can_play_response_for(self.vcr_request):
log.info(f"Playing response for {self.vcr_request} from cassette")
response = self.cassette.play_response(self.vcr_request)
return VCRHTTPResponse(response)
else:
if self.cassette.write_protected and self.cassette.filter_request(self.vcr_request):
> raise CannotOverwriteExistingCassetteException(
cassette=self.cassette,
failed_request=self.vcr_request,
)
E vcr.errors.CannotOverwriteExistingCassetteException: Can't overwrite existing cassette ('/mnt/vss/work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add.yaml') in your current record mode ('once').
E No match for the request (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-5072?api-version=2023-01-01>) was found.
E Found 2 similar requests with 1 different matcher(s) :
E
E 1 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', 'custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-5072 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003
E
E 2 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', 'custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-5072 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings
env/lib/python3.11/site-packages/vcr/stubs/init.py:263: CannotOverwriteExistingCassetteException
During handling of the above exception, another exception occurred:
self = <azure.cli.command_modules.appservice.tests.latest.test_functionapp_access_restriction_commands.FunctionAppAccessRestrictionScenarioTest testMethod=test_functionapp_access_restriction_add>
resource_group = 'clitest.rg000001', location = 'northeurope'
@ResourceGroupPreparer(random_name_length=17, parameter_name_for_location='location', location=WINDOWS_ASP_LOCATION_WEBAPP)
# random_name_length is temporary until the bug fix in the API is deployed successfully & then should be removed.
@StorageAccountPreparer(location=WINDOWS_ASP_LOCATION_WEBAPP)
def test_functionapp_access_restriction_add(self, resource_group, location):
self.kwargs.update({
'app_name': self.create_random_name(prefix='cli-funcapp-nwr', length=24),
'loc': location
})
> self.cmd('functionapp create -g {rg} -n {app_name} --consumption-plan-location {loc} -s {sa} --functions-version 4', checks=[
JMESPathCheck('state', 'Running')
])
src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:112:
src/azure-cli-testsdk/azure/cli/testsdk/base.py:176: in cmd
return execute(self.cli_ctx, command, expect_failure=expect_failure).assert_with_checks(checks)
src/azure-cli-testsdk/azure/cli/testsdk/base.py:251: in init
self.in_process_execute(cli_ctx, command, expect_failure=expect_failure)
_
self = <azure.cli.testsdk.base.ExecutionResult object at 0x7f0d27b54550>
cli_ctx = <azure.cli.core.mock.DummyCli object at 0x7f0d27f6a090>
command = 'functionapp create -g clitest.rg000001 -n cli-funcapp-nwr000003 --consumption-plan-location northeurope -s clitest000002 --functions-version 4'
expect_failure = False
def _in_process_execute(self, cli_ctx, command, expect_failure=False):
from io import StringIO
from vcr.errors import CannotOverwriteExistingCassetteException
if command.startswith('az '):
command = command[3:]
stdout_buf = StringIO()
logging_buf = StringIO()
try:
# issue: stderr cannot be redirect in this form, as a result some failure information
# is lost when command fails.
self.exit_code = cli_ctx.invoke(shlex.split(command), out_file=stdout_buf) or 0
self.output = stdout_buf.getvalue()
self.applog = logging_buf.getvalue()
except CannotOverwriteExistingCassetteException as ex:
> raise AssertionError(ex)
E AssertionError: Can't overwrite existing cassette ('/mnt/vss/_work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add.yaml') in your current record mode ('once').
E No match for the request (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-5072?api-version=2023-01-01>) was found.
E Found 2 similar requests with 1 different matcher(s) :
E
E 1 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', '_custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-5072 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003
E
E 2 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', '_custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-5072 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings
src/azure-cli-testsdk/azure/cli/testsdk/base.py:307: AssertionErrorsrc/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:102 Failed test_functionapp_access_restriction_add_ip_address_validation self = <azure.cli.testsdk.base.ExecutionResult object at 0x7f0d21751f90>
cli_ctx = <azure.cli.core.mock.DummyCli object at 0x7f0d27f89c50>
command = 'functionapp create -g clitest.rg000001 -n cli-funcapp-nwr000003 --consumption-plan-location northeurope -s clitest000002 --functions-version 4'
expect_failure = False
def in_process_execute(self, cli_ctx, command, expect_failure=False):
from io import StringIO
from vcr.errors import CannotOverwriteExistingCassetteException
if command.startswith('az '):
command = command[3:]
stdout_buf = StringIO()
logging_buf = StringIO()
try:
# issue: stderr cannot be redirect in this form, as a result some failure information
# is lost when command fails.
> self.exit_code = cli_ctx.invoke(shlex.split(command), out_file=stdout_buf) or 0
src/azure-cli-testsdk/azure/cli/testsdk/base.py:302:
env/lib/python3.11/site-packages/knack/cli.py:245: in invoke
exit_code = self.exception_handler(ex)
src/azure-cli-core/azure/cli/core/init.py:127: in exception_handler
return handle_exception(ex)
src/azure-cli-testsdk/azure/cli/testsdk/patches.py:33: in handle_main_exception
raise ex
env/lib/python3.11/site-packages/knack/cli.py:233: in invoke
cmd_result = self.invocation.execute(args)
src/azure-cli-core/azure/cli/core/commands/init.py:664: in execute
raise ex
src/azure-cli-core/azure/cli/core/commands/init.py:731: in run_jobs_serially
results.append(self.run_job(expanded_arg, cmd_copy))
src/azure-cli-core/azure/cli/core/commands/init.py:723: in run_job
return cmd_copy.exception_handler(ex)
src/azure-cli/azure/cli/command_modules/appservice/commands.py:46: in ex_handler
raise ex
src/azure-cli-core/azure/cli/core/commands/init.py:701: in run_job
result = cmd_copy(params)
src/azure-cli-core/azure/cli/core/commands/init.py:334: in call
return self.handler(*args, **kwargs)
src/azure-cli-core/azure/cli/core/commands/command_operation.py:121: in handler
return op(**command_args)
src/azure-cli/azure/cli/command_modules/appservice/custom.py:4822: in create_functionapp
plan_info = create_consumption_plan(
src/azure-cli/azure/cli/command_modules/appservice/custom.py:4499: in create_consumption_plan
poller = client.app_service_plans.begin_create_or_update(resource_group_name, name, plan_def)
env/lib/python3.11/site-packages/azure/core/tracing/decorator.py:76: in wrapper_use_tracer
return func(*args, **kwargs)
env/lib/python3.11/site-packages/azure/mgmt/web/v2023_01_01/operations/app_service_plans_operations.py:1549: in begin_create_or_update
raw_result = self.create_or_update_initial(
env/lib/python3.11/site-packages/azure/mgmt/web/v2023_01_01/operations/app_service_plans_operations.py:1408: in create_or_update_initial
pipeline_response: PipelineResponse = self.client.pipeline.run( # pylint: disable=protected-access
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:213: in run
return first_node.send(pipeline_request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/mgmt/core/policies/base.py:47: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/policies/redirect.py:181: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/policies/retry.py:467: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/policies/authentication.py:115: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.11/site-packages/azure/core/pipeline/base.py:108: in send
self.sender.send(request.http_request, **request.context.options),
env/lib/python3.11/site-packages/azure/core/pipeline/transport/requests_basic.py:338: in send
response = self.session.request( # type: ignore
env/lib/python3.11/site-packages/requests/sessions.py:589: in request
resp = self.send(prep, **send_kwargs)
env/lib/python3.11/site-packages/requests/sessions.py:703: in send
r = adapter.send(request, **kwargs)
env/lib/python3.11/site-packages/requests/adapters.py:486: in send
resp = conn.urlopen(
env/lib/python3.11/site-packages/urllib3/connectionpool.py:715: in urlopen
httplib_response = self.make_request(
env/lib/python3.11/site-packages/urllib3/connectionpool.py:458: in make_request
httplib_response = conn.getresponse(buffering=True)
self = <vcr.patch.VCRRequestsHTTPSConnection/mnt/vss/work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add_ip_address_validation.yaml object at 0x7f0d21524d90>
= False, kwargs = {'buffering': True}
def getresponse(self, =False, **kwargs):
"""Retrieve the response"""
# Check to see if the cassette has a response for this request. If so,
# then return it
if self.cassette.can_play_response_for(self.vcr_request):
log.info(f"Playing response for {self.vcr_request} from cassette")
response = self.cassette.play_response(self.vcr_request)
return VCRHTTPResponse(response)
else:
if self.cassette.write_protected and self.cassette.filter_request(self.vcr_request):
> raise CannotOverwriteExistingCassetteException(
cassette=self.cassette,
failed_request=self.vcr_request,
)
E vcr.errors.CannotOverwriteExistingCassetteException: Can't overwrite existing cassette ('/mnt/vss/work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add_ip_address_validation.yaml') in your current record mode ('once').
E No match for the request (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-aeb1?api-version=2023-01-01>) was found.
E Found 2 similar requests with 1 different matcher(s) :
E
E 1 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', 'custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-aeb1 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003
E
E 2 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', 'custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-aeb1 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings
env/lib/python3.11/site-packages/vcr/stubs/init.py:263: CannotOverwriteExistingCassetteException
During handling of the above exception, another exception occurred:
self = <azure.cli.command_modules.appservice.tests.latest.test_functionapp_access_restriction_commands.FunctionAppAccessRestrictionScenarioTest testMethod=test_functionapp_access_restriction_add_ip_address_validation>
resource_group = 'clitest.rg000001', location = 'northeurope'
@ResourceGroupPreparer(parameter_name_for_location='location', location=WINDOWS_ASP_LOCATION_WEBAPP)
@StorageAccountPreparer(location=WINDOWS_ASP_LOCATION_WEBAPP)
def test_functionapp_access_restriction_add_ip_address_validation(self, resource_group, location):
self.kwargs.update({
'app_name': self.create_random_name(prefix='cli-funcapp-nwr', length=24),
'loc': location
})
> self.cmd('functionapp create -g {rg} -n {app_name} --consumption-plan-location {loc} -s {sa} --functions-version 4', checks=[
JMESPathCheck('state', 'Running')
])
src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:132:
src/azure-cli-testsdk/azure/cli/testsdk/base.py:176: in cmd
return execute(self.cli_ctx, command, expect_failure=expect_failure).assert_with_checks(checks)
src/azure-cli-testsdk/azure/cli/testsdk/base.py:251: in init
self.in_process_execute(cli_ctx, command, expect_failure=expect_failure)
_
self = <azure.cli.testsdk.base.ExecutionResult object at 0x7f0d21751f90>
cli_ctx = <azure.cli.core.mock.DummyCli object at 0x7f0d27f89c50>
command = 'functionapp create -g clitest.rg000001 -n cli-funcapp-nwr000003 --consumption-plan-location northeurope -s clitest000002 --functions-version 4'
expect_failure = False
def _in_process_execute(self, cli_ctx, command, expect_failure=False):
from io import StringIO
from vcr.errors import CannotOverwriteExistingCassetteException
if command.startswith('az '):
command = command[3:]
stdout_buf = StringIO()
logging_buf = StringIO()
try:
# issue: stderr cannot be redirect in this form, as a result some failure information
# is lost when command fails.
self.exit_code = cli_ctx.invoke(shlex.split(command), out_file=stdout_buf) or 0
self.output = stdout_buf.getvalue()
self.applog = logging_buf.getvalue()
except CannotOverwriteExistingCassetteException as ex:
> raise AssertionError(ex)
E AssertionError: Can't overwrite existing cassette ('/mnt/vss/_work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add_ip_address_validation.yaml') in your current record mode ('once').
E No match for the request (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-aeb1?api-version=2023-01-01>) was found.
E Found 2 similar requests with 1 different matcher(s) :
E
E 1 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', '_custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-aeb1 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003
E
E 2 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', '_custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-aeb1 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings
src/azure-cli-testsdk/azure/cli/testsdk/base.py:307: AssertionErrorsrc/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:123 Failed test_functionapp_access_restriction_add_scm The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:204 Failed test_functionapp_access_restriction_remove The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:178 Failed test_functionapp_access_restriction_remove_scm The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:224 Failed test_functionapp_access_restriction_set_complex The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:82 Failed test_functionapp_access_restriction_set_simple The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:51 Failed test_functionapp_access_restriction_show The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:26 Failed test_functionapp_reserved_instance The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:171 Failed test_functionapp_consumption_e2e The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:407 Failed test_functionapp_consumption_ragrs_storage_e2e The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:435 Failed test_functionapp_consumption_linux The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:536 Failed test_functionapp_consumption_linux_java The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:555 Failed test_functionapp_consumption_linux_powershell The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:572 Failed test_functionapp_create_with_appcontainer_managed_environment_consumption_plan_error The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:937 Failed test_functionapp_windows_runtime The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1283 Failed test_functionapp_windows_runtime_custom_handler The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1394 Failed test_functionapp_windows_runtime_functions_version The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1377 Failed test_functionapp_windows_runtime_java The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1301 Failed test_functionapp_windows_runtime_powershell The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1322 Failed test_functionapp_windows_runtime_version The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1343 Failed test_functionapp_windows_runtime_version_invalid The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1367 Failed test_functionapp_windows_without_runtime The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1414 Failed test_functionapp_with_app_insights_key The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1432 Failed test_functionapp_with_app_insights_conn_string The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1463 Failed test_functionapp_without_default_distributed_tracing The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1520 Failed test_functionapp_with_default_app_insights The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1538 Failed test_functionapp_with_no_default_app_insights The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1560 Failed test_functionapp_create_default_rg_and_workspace The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1588 Failed test_functionapp_existing_default_rg The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1616 Failed test_functionapp_existing_workspace The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1605 Failed test_functionapp_on_linux_consumption_python_39 The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1713 Failed test_functionapp_on_linux_dotnet_consumption The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1787 Failed test_functionapp_on_linux_functions_version_consumption The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1769 Failed test_functionapp_on_linux_version_consumption The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1686 Failed test_functionapp_keys_delete The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1992 Failed test_functionapp_keys_list The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1968 Failed test_functionapp_keys_set The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1941 Failed test_functionapp_keys_set_slot The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:2019 Failed test_functionapp_vnet_integration_consumption_plan The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:2616 Failed test_functionapp_powershell_version The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:2905 Failed test_functionapp_language_runtime_version_deprecated The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:2928 ❌3.9
Type Test Case Error Message Line Failed test_functionapp_access_restriction_add self = <azure.cli.testsdk.base.ExecutionResult object at 0x7faed673e460>
cli_ctx = <azure.cli.core.mock.DummyCli object at 0x7faedd16c220>
command = 'functionapp create -g clitest.rg000001 -n cli-funcapp-nwr000003 --consumption-plan-location northeurope -s clitest000002 --functions-version 4'
expect_failure = False
def in_process_execute(self, cli_ctx, command, expect_failure=False):
from io import StringIO
from vcr.errors import CannotOverwriteExistingCassetteException
if command.startswith('az '):
command = command[3:]
stdout_buf = StringIO()
logging_buf = StringIO()
try:
# issue: stderr cannot be redirect in this form, as a result some failure information
# is lost when command fails.
> self.exit_code = cli_ctx.invoke(shlex.split(command), out_file=stdout_buf) or 0
src/azure-cli-testsdk/azure/cli/testsdk/base.py:302:
env/lib/python3.9/site-packages/knack/cli.py:245: in invoke
exit_code = self.exception_handler(ex)
src/azure-cli-core/azure/cli/core/init.py:127: in exception_handler
return handle_exception(ex)
src/azure-cli-testsdk/azure/cli/testsdk/patches.py:33: in handle_main_exception
raise ex
env/lib/python3.9/site-packages/knack/cli.py:233: in invoke
cmd_result = self.invocation.execute(args)
src/azure-cli-core/azure/cli/core/commands/init.py:664: in execute
raise ex
src/azure-cli-core/azure/cli/core/commands/init.py:731: in run_jobs_serially
results.append(self.run_job(expanded_arg, cmd_copy))
src/azure-cli-core/azure/cli/core/commands/init.py:723: in run_job
return cmd_copy.exception_handler(ex)
src/azure-cli/azure/cli/command_modules/appservice/commands.py:46: in ex_handler
raise ex
src/azure-cli-core/azure/cli/core/commands/init.py:701: in run_job
result = cmd_copy(params)
src/azure-cli-core/azure/cli/core/commands/init.py:334: in call
return self.handler(*args, **kwargs)
src/azure-cli-core/azure/cli/core/commands/command_operation.py:121: in handler
return op(**command_args)
src/azure-cli/azure/cli/command_modules/appservice/custom.py:4822: in create_functionapp
plan_info = create_consumption_plan(
src/azure-cli/azure/cli/command_modules/appservice/custom.py:4499: in create_consumption_plan
poller = client.app_service_plans.begin_create_or_update(resource_group_name, name, plan_def)
env/lib/python3.9/site-packages/azure/core/tracing/decorator.py:76: in wrapper_use_tracer
return func(*args, **kwargs)
env/lib/python3.9/site-packages/azure/mgmt/web/v2023_01_01/operations/app_service_plans_operations.py:1549: in begin_create_or_update
raw_result = self.create_or_update_initial(
env/lib/python3.9/site-packages/azure/mgmt/web/v2023_01_01/operations/app_service_plans_operations.py:1408: in create_or_update_initial
pipeline_response: PipelineResponse = self.client.pipeline.run( # pylint: disable=protected-access
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:213: in run
return first_node.send(pipeline_request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/mgmt/core/policies/base.py:47: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/policies/redirect.py:181: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/policies/retry.py:467: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/policies/authentication.py:115: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:108: in send
self.sender.send(request.http_request, **request.context.options),
env/lib/python3.9/site-packages/azure/core/pipeline/transport/requests_basic.py:338: in send
response = self.session.request( # type: ignore
env/lib/python3.9/site-packages/requests/sessions.py:589: in request
resp = self.send(prep, **send_kwargs)
env/lib/python3.9/site-packages/requests/sessions.py:703: in send
r = adapter.send(request, **kwargs)
env/lib/python3.9/site-packages/requests/adapters.py:486: in send
resp = conn.urlopen(
env/lib/python3.9/site-packages/urllib3/connectionpool.py:715: in urlopen
httplib_response = self.make_request(
env/lib/python3.9/site-packages/urllib3/connectionpool.py:458: in make_request
httplib_response = conn.getresponse(buffering=True)
self = <vcr.patch.VCRRequestsHTTPSConnection/mnt/vss/work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add.yaml object at 0x7faed65fc5e0>
= False, kwargs = {'buffering': True}
def getresponse(self, =False, **kwargs):
"""Retrieve the response"""
# Check to see if the cassette has a response for this request. If so,
# then return it
if self.cassette.can_play_response_for(self.vcr_request):
log.info(f"Playing response for {self.vcr_request} from cassette")
response = self.cassette.play_response(self.vcr_request)
return VCRHTTPResponse(response)
else:
if self.cassette.write_protected and self.cassette.filter_request(self.vcr_request):
> raise CannotOverwriteExistingCassetteException(
cassette=self.cassette,
failed_request=self.vcr_request,
)
E vcr.errors.CannotOverwriteExistingCassetteException: Can't overwrite existing cassette ('/mnt/vss/work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add.yaml') in your current record mode ('once').
E No match for the request (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-fa84?api-version=2023-01-01>) was found.
E Found 2 similar requests with 1 different matcher(s) :
E
E 1 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', 'custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-fa84 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003
E
E 2 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', 'custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-fa84 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings
env/lib/python3.9/site-packages/vcr/stubs/init.py:263: CannotOverwriteExistingCassetteException
During handling of the above exception, another exception occurred:
self = <azure.cli.command_modules.appservice.tests.latest.test_functionapp_access_restriction_commands.FunctionAppAccessRestrictionScenarioTest testMethod=test_functionapp_access_restriction_add>
resource_group = 'clitest.rg000001', location = 'northeurope'
@ResourceGroupPreparer(random_name_length=17, parameter_name_for_location='location', location=WINDOWS_ASP_LOCATION_WEBAPP)
# random_name_length is temporary until the bug fix in the API is deployed successfully & then should be removed.
@StorageAccountPreparer(location=WINDOWS_ASP_LOCATION_WEBAPP)
def test_functionapp_access_restriction_add(self, resource_group, location):
self.kwargs.update({
'app_name': self.create_random_name(prefix='cli-funcapp-nwr', length=24),
'loc': location
})
> self.cmd('functionapp create -g {rg} -n {app_name} --consumption-plan-location {loc} -s {sa} --functions-version 4', checks=[
JMESPathCheck('state', 'Running')
])
src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:112:
src/azure-cli-testsdk/azure/cli/testsdk/base.py:176: in cmd
return execute(self.cli_ctx, command, expect_failure=expect_failure).assert_with_checks(checks)
src/azure-cli-testsdk/azure/cli/testsdk/base.py:251: in init
self.in_process_execute(cli_ctx, command, expect_failure=expect_failure)
_
self = <azure.cli.testsdk.base.ExecutionResult object at 0x7faed673e460>
cli_ctx = <azure.cli.core.mock.DummyCli object at 0x7faedd16c220>
command = 'functionapp create -g clitest.rg000001 -n cli-funcapp-nwr000003 --consumption-plan-location northeurope -s clitest000002 --functions-version 4'
expect_failure = False
def _in_process_execute(self, cli_ctx, command, expect_failure=False):
from io import StringIO
from vcr.errors import CannotOverwriteExistingCassetteException
if command.startswith('az '):
command = command[3:]
stdout_buf = StringIO()
logging_buf = StringIO()
try:
# issue: stderr cannot be redirect in this form, as a result some failure information
# is lost when command fails.
self.exit_code = cli_ctx.invoke(shlex.split(command), out_file=stdout_buf) or 0
self.output = stdout_buf.getvalue()
self.applog = logging_buf.getvalue()
except CannotOverwriteExistingCassetteException as ex:
> raise AssertionError(ex)
E AssertionError: Can't overwrite existing cassette ('/mnt/vss/_work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add.yaml') in your current record mode ('once').
E No match for the request (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-fa84?api-version=2023-01-01>) was found.
E Found 2 similar requests with 1 different matcher(s) :
E
E 1 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', '_custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-fa84 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003
E
E 2 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', '_custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-fa84 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings
src/azure-cli-testsdk/azure/cli/testsdk/base.py:307: AssertionErrorsrc/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:102 Failed test_functionapp_access_restriction_add_ip_address_validation self = <azure.cli.testsdk.base.ExecutionResult object at 0x7faed673a7f0>
cli_ctx = <azure.cli.core.mock.DummyCli object at 0x7faedd16cd90>
command = 'functionapp create -g clitest.rg000001 -n cli-funcapp-nwr000003 --consumption-plan-location northeurope -s clitest000002 --functions-version 4'
expect_failure = False
def in_process_execute(self, cli_ctx, command, expect_failure=False):
from io import StringIO
from vcr.errors import CannotOverwriteExistingCassetteException
if command.startswith('az '):
command = command[3:]
stdout_buf = StringIO()
logging_buf = StringIO()
try:
# issue: stderr cannot be redirect in this form, as a result some failure information
# is lost when command fails.
> self.exit_code = cli_ctx.invoke(shlex.split(command), out_file=stdout_buf) or 0
src/azure-cli-testsdk/azure/cli/testsdk/base.py:302:
env/lib/python3.9/site-packages/knack/cli.py:245: in invoke
exit_code = self.exception_handler(ex)
src/azure-cli-core/azure/cli/core/init.py:127: in exception_handler
return handle_exception(ex)
src/azure-cli-testsdk/azure/cli/testsdk/patches.py:33: in handle_main_exception
raise ex
env/lib/python3.9/site-packages/knack/cli.py:233: in invoke
cmd_result = self.invocation.execute(args)
src/azure-cli-core/azure/cli/core/commands/init.py:664: in execute
raise ex
src/azure-cli-core/azure/cli/core/commands/init.py:731: in run_jobs_serially
results.append(self.run_job(expanded_arg, cmd_copy))
src/azure-cli-core/azure/cli/core/commands/init.py:723: in run_job
return cmd_copy.exception_handler(ex)
src/azure-cli/azure/cli/command_modules/appservice/commands.py:46: in ex_handler
raise ex
src/azure-cli-core/azure/cli/core/commands/init.py:701: in run_job
result = cmd_copy(params)
src/azure-cli-core/azure/cli/core/commands/init.py:334: in call
return self.handler(*args, **kwargs)
src/azure-cli-core/azure/cli/core/commands/command_operation.py:121: in handler
return op(**command_args)
src/azure-cli/azure/cli/command_modules/appservice/custom.py:4822: in create_functionapp
plan_info = create_consumption_plan(
src/azure-cli/azure/cli/command_modules/appservice/custom.py:4499: in create_consumption_plan
poller = client.app_service_plans.begin_create_or_update(resource_group_name, name, plan_def)
env/lib/python3.9/site-packages/azure/core/tracing/decorator.py:76: in wrapper_use_tracer
return func(*args, **kwargs)
env/lib/python3.9/site-packages/azure/mgmt/web/v2023_01_01/operations/app_service_plans_operations.py:1549: in begin_create_or_update
raw_result = self.create_or_update_initial(
env/lib/python3.9/site-packages/azure/mgmt/web/v2023_01_01/operations/app_service_plans_operations.py:1408: in create_or_update_initial
pipeline_response: PipelineResponse = self.client.pipeline.run( # pylint: disable=protected-access
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:213: in run
return first_node.send(pipeline_request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/mgmt/core/policies/base.py:47: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/policies/redirect.py:181: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/policies/retry.py:467: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/policies/authentication.py:115: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:70: in send
response = self.next.send(request)
env/lib/python3.9/site-packages/azure/core/pipeline/base.py:108: in send
self.sender.send(request.http_request, **request.context.options),
env/lib/python3.9/site-packages/azure/core/pipeline/transport/requests_basic.py:338: in send
response = self.session.request( # type: ignore
env/lib/python3.9/site-packages/requests/sessions.py:589: in request
resp = self.send(prep, **send_kwargs)
env/lib/python3.9/site-packages/requests/sessions.py:703: in send
r = adapter.send(request, **kwargs)
env/lib/python3.9/site-packages/requests/adapters.py:486: in send
resp = conn.urlopen(
env/lib/python3.9/site-packages/urllib3/connectionpool.py:715: in urlopen
httplib_response = self.make_request(
env/lib/python3.9/site-packages/urllib3/connectionpool.py:458: in make_request
httplib_response = conn.getresponse(buffering=True)
self = <vcr.patch.VCRRequestsHTTPSConnection/mnt/vss/work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add_ip_address_validation.yaml object at 0x7faed66048b0>
= False, kwargs = {'buffering': True}
def getresponse(self, =False, **kwargs):
"""Retrieve the response"""
# Check to see if the cassette has a response for this request. If so,
# then return it
if self.cassette.can_play_response_for(self.vcr_request):
log.info(f"Playing response for {self.vcr_request} from cassette")
response = self.cassette.play_response(self.vcr_request)
return VCRHTTPResponse(response)
else:
if self.cassette.write_protected and self.cassette.filter_request(self.vcr_request):
> raise CannotOverwriteExistingCassetteException(
cassette=self.cassette,
failed_request=self.vcr_request,
)
E vcr.errors.CannotOverwriteExistingCassetteException: Can't overwrite existing cassette ('/mnt/vss/work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add_ip_address_validation.yaml') in your current record mode ('once').
E No match for the request (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-a757?api-version=2023-01-01>) was found.
E Found 2 similar requests with 1 different matcher(s) :
E
E 1 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', 'custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-a757 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003
E
E 2 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', 'custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-a757 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings
env/lib/python3.9/site-packages/vcr/stubs/init.py:263: CannotOverwriteExistingCassetteException
During handling of the above exception, another exception occurred:
self = <azure.cli.command_modules.appservice.tests.latest.test_functionapp_access_restriction_commands.FunctionAppAccessRestrictionScenarioTest testMethod=test_functionapp_access_restriction_add_ip_address_validation>
resource_group = 'clitest.rg000001', location = 'northeurope'
@ResourceGroupPreparer(parameter_name_for_location='location', location=WINDOWS_ASP_LOCATION_WEBAPP)
@StorageAccountPreparer(location=WINDOWS_ASP_LOCATION_WEBAPP)
def test_functionapp_access_restriction_add_ip_address_validation(self, resource_group, location):
self.kwargs.update({
'app_name': self.create_random_name(prefix='cli-funcapp-nwr', length=24),
'loc': location
})
> self.cmd('functionapp create -g {rg} -n {app_name} --consumption-plan-location {loc} -s {sa} --functions-version 4', checks=[
JMESPathCheck('state', 'Running')
])
src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:132:
src/azure-cli-testsdk/azure/cli/testsdk/base.py:176: in cmd
return execute(self.cli_ctx, command, expect_failure=expect_failure).assert_with_checks(checks)
src/azure-cli-testsdk/azure/cli/testsdk/base.py:251: in init
self.in_process_execute(cli_ctx, command, expect_failure=expect_failure)
_
self = <azure.cli.testsdk.base.ExecutionResult object at 0x7faed673a7f0>
cli_ctx = <azure.cli.core.mock.DummyCli object at 0x7faedd16cd90>
command = 'functionapp create -g clitest.rg000001 -n cli-funcapp-nwr000003 --consumption-plan-location northeurope -s clitest000002 --functions-version 4'
expect_failure = False
def _in_process_execute(self, cli_ctx, command, expect_failure=False):
from io import StringIO
from vcr.errors import CannotOverwriteExistingCassetteException
if command.startswith('az '):
command = command[3:]
stdout_buf = StringIO()
logging_buf = StringIO()
try:
# issue: stderr cannot be redirect in this form, as a result some failure information
# is lost when command fails.
self.exit_code = cli_ctx.invoke(shlex.split(command), out_file=stdout_buf) or 0
self.output = stdout_buf.getvalue()
self.applog = logging_buf.getvalue()
except CannotOverwriteExistingCassetteException as ex:
> raise AssertionError(ex)
E AssertionError: Can't overwrite existing cassette ('/mnt/vss/_work/1/s/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/recordings/test_functionapp_access_restriction_add_ip_address_validation.yaml') in your current record mode ('once').
E No match for the request (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-a757?api-version=2023-01-01>) was found.
E Found 2 similar requests with 1 different matcher(s) :
E
E 1 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', '_custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-a757 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003
E
E 2 - (<Request (PUT) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings?api-version=2023-01-01>).
E Matchers succeeded : ['method', 'scheme', 'host', 'port', '_custom_request_query_matcher']
E Matchers failed :
E path - assertion failure :
E /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/serverfarms/ASP-clitestrg000001-a757 != /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.Web/sites/cli-funcapp-nwr000003/config/appsettings
src/azure-cli-testsdk/azure/cli/testsdk/base.py:307: AssertionErrorsrc/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:123 Failed test_functionapp_access_restriction_add_scm The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:204 Failed test_functionapp_access_restriction_remove The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:178 Failed test_functionapp_access_restriction_remove_scm The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:224 Failed test_functionapp_access_restriction_set_complex The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:82 Failed test_functionapp_access_restriction_set_simple The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:51 Failed test_functionapp_access_restriction_show The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_access_restriction_commands.py:26 Failed test_functionapp_reserved_instance The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:171 Failed test_functionapp_consumption_e2e The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:407 Failed test_functionapp_consumption_ragrs_storage_e2e The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:435 Failed test_functionapp_consumption_linux The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:536 Failed test_functionapp_consumption_linux_java The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:555 Failed test_functionapp_consumption_linux_powershell The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:572 Failed test_functionapp_create_with_appcontainer_managed_environment_consumption_plan_error The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:937 Failed test_functionapp_windows_runtime The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1283 Failed test_functionapp_windows_runtime_custom_handler The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1394 Failed test_functionapp_windows_runtime_functions_version The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1377 Failed test_functionapp_windows_runtime_java The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1301 Failed test_functionapp_windows_runtime_powershell The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1322 Failed test_functionapp_windows_runtime_version The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1343 Failed test_functionapp_windows_runtime_version_invalid The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1367 Failed test_functionapp_windows_without_runtime The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1414 Failed test_functionapp_with_app_insights_key The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1432 Failed test_functionapp_with_app_insights_conn_string The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1463 Failed test_functionapp_without_default_distributed_tracing The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1520 Failed test_functionapp_with_default_app_insights The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1538 Failed test_functionapp_with_no_default_app_insights The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1560 Failed test_functionapp_create_default_rg_and_workspace The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1588 Failed test_functionapp_existing_default_rg The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1616 Failed test_functionapp_existing_workspace The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1605 Failed test_functionapp_on_linux_consumption_python_39 The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1713 Failed test_functionapp_on_linux_dotnet_consumption The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1787 Failed test_functionapp_on_linux_functions_version_consumption The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1769 Failed test_functionapp_on_linux_version_consumption The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1686 Failed test_functionapp_keys_delete The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1992 Failed test_functionapp_keys_list The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1968 Failed test_functionapp_keys_set The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:1941 Failed test_functionapp_keys_set_slot The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:2019 Failed test_functionapp_vnet_integration_consumption_plan The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:2616 Failed test_functionapp_powershell_version The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:2905 Failed test_functionapp_language_runtime_version_deprecated The error message is too long, please check the pipeline log for details. src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_functionapp_commands.py:2928 ️✔️aro
️✔️latest
️✔️3.11
️✔️3.9
️✔️backup
️✔️latest
️✔️3.11
️✔️3.9
️✔️batch
️✔️latest
️✔️3.11
️✔️3.9
️✔️batchai
️✔️latest
️✔️3.11
️✔️3.9
️✔️billing
️✔️latest
️✔️3.11
️✔️3.9
️✔️botservice
️✔️latest
️✔️3.11
️✔️3.9
️✔️cdn
️✔️latest
️✔️3.11
️✔️3.9
️✔️cloud
️✔️latest
️✔️3.11
️✔️3.9
️✔️cognitiveservices
️✔️latest
️✔️3.11
️✔️3.9
️✔️compute_recommender
️✔️latest
️✔️3.11
️✔️3.9
️✔️config
️✔️latest
️✔️3.11
️✔️3.9
️✔️configure
️✔️latest
️✔️3.11
️✔️3.9
️✔️consumption
️✔️latest
️✔️3.11
️✔️3.9
️✔️container
️✔️latest
️✔️3.11
️✔️3.9
️✔️containerapp
️✔️latest
️✔️3.11
️✔️3.9
️✔️core
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️cosmosdb
️✔️latest
️✔️3.11
️✔️3.9
️✔️databoxedge
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️dla
️✔️latest
️✔️3.11
️✔️3.9
️✔️dls
️✔️latest
️✔️3.11
️✔️3.9
️✔️dms
️✔️latest
️✔️3.11
️✔️3.9
️✔️eventgrid
️✔️latest
️✔️3.11
️✔️3.9
️✔️eventhubs
️✔️latest
️✔️3.11
️✔️3.9
️✔️feedback
️✔️latest
️✔️3.11
️✔️3.9
️✔️find
️✔️latest
️✔️3.11
️✔️3.9
️✔️hdinsight
️✔️latest
️✔️3.11
️✔️3.9
️✔️identity
️✔️latest
️✔️3.11
️✔️3.9
️✔️iot
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️keyvault
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️kusto
️✔️latest
️✔️3.11
️✔️3.9
️✔️lab
️✔️latest
️✔️3.11
️✔️3.9
️✔️managedservices
️✔️latest
️✔️3.11
️✔️3.9
️✔️maps
️✔️latest
️✔️3.11
️✔️3.9
️✔️marketplaceordering
️✔️latest
️✔️3.11
️✔️3.9
️✔️monitor
️✔️latest
️✔️3.11
️✔️3.9
️✔️mysql
️✔️latest
️✔️3.11
️✔️3.9
️✔️netappfiles
️✔️latest
️✔️3.11
️✔️3.9
️✔️network
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️policyinsights
️✔️latest
️✔️3.11
️✔️3.9
️✔️privatedns
️✔️latest
️✔️3.11
️✔️3.9
️✔️profile
️✔️latest
️✔️3.11
️✔️3.9
️✔️rdbms
️✔️latest
️✔️3.11
️✔️3.9
️✔️redis
️✔️latest
️✔️3.11
️✔️3.9
️✔️relay
️✔️latest
️✔️3.11
️✔️3.9
️✔️resource
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️role
️✔️latest
️✔️3.11
️✔️3.9
️✔️search
️✔️latest
️✔️3.11
️✔️3.9
️✔️security
️✔️latest
️✔️3.11
️✔️3.9
️✔️servicebus
️✔️latest
️✔️3.11
️✔️3.9
️✔️serviceconnector
️✔️latest
️✔️3.11
️✔️3.9
️✔️servicefabric
️✔️latest
️✔️3.11
️✔️3.9
️✔️signalr
️✔️latest
️✔️3.11
️✔️3.9
️✔️sql
️✔️latest
️✔️3.11
️✔️3.9
️✔️sqlvm
️✔️latest
️✔️3.11
️✔️3.9
️✔️storage
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️synapse
️✔️latest
️✔️3.11
️✔️3.9
️✔️telemetry
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️util
️✔️latest
️✔️3.11
️✔️3.9
️✔️vm
️✔️2018-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2019-03-01-hybrid
️✔️3.11
️✔️3.9
️✔️2020-09-01-hybrid
️✔️3.11
️✔️3.9
️✔️latest
️✔️3.11
️✔️3.9
️✔️AzureCLI-BreakingChangeTest
️✔️Non Breaking Changes
AppService
@kamperiadis Please resolve these CI issues~
@kamperiadis Please add some tests for this PR change
@kamperiadis Please note that we are launching the release for this sprint this week. Please resolve all comments by 07/02/2024 10:00 UTC, otherwise the release of this PR will have to be postponed to the next sprint (on 08-06)
@kamperiadis Since we haven't received a response to this PR for a long time, I will put it in the backlog first. After you have resolved its comments, we will consider adding it to the release milestone