diff --git a/src/containerapp-preview/azext_containerapp_preview/_clients.py b/src/containerapp-preview/azext_containerapp_preview/_clients.py index 64a1dca7e9a..d0227767002 100644 --- a/src/containerapp-preview/azext_containerapp_preview/_clients.py +++ b/src/containerapp-preview/azext_containerapp_preview/_clients.py @@ -30,21 +30,15 @@ def poll_results(cmd, request_url): class ContainerAppClient(_get_azext_containerapp_module("azext_containerapp._clients").ContainerAppClient): - @classmethod - def get_api_version(cls): - return PREVIEW_API_VERSION + api_version = PREVIEW_API_VERSION class ManagedEnvironmentClient(_get_azext_containerapp_module("azext_containerapp._clients").ManagedEnvironmentClient): - @classmethod - def get_api_version(cls): - return PREVIEW_API_VERSION + api_version = PREVIEW_API_VERSION class ConnectedEnvironmentClient(): - @classmethod - def get_api_version(cls): - return PREVIEW_API_VERSION + api_version = PREVIEW_API_VERSION @classmethod def create(cls, cmd, resource_group_name, name, connected_environment_envelope, no_wait=False): @@ -56,7 +50,7 @@ def create(cls, cmd, resource_group_name, name, connected_environment_envelope, sub_id, resource_group_name, name, - cls.get_api_version()) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PUT", request_url, body=json.dumps(connected_environment_envelope)) @@ -79,7 +73,7 @@ def update(cls, cmd, resource_group_name, name, managed_environment_envelope, no sub_id, resource_group_name, name, - cls.get_api_version()) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PATCH", request_url, body=json.dumps(managed_environment_envelope)) @@ -105,7 +99,7 @@ def delete(cls, cmd, resource_group_name, name, no_wait=False): sub_id, resource_group_name, name, - cls.get_api_version()) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "DELETE", request_url) @@ -128,7 +122,7 @@ def show(cls, cmd, resource_group_name, name): sub_id, resource_group_name, name, - cls.get_api_version()) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -142,7 +136,7 @@ def list_by_subscription(cls, cmd, formatter=lambda x: x): request_url = "{}/subscriptions/{}/providers/Microsoft.App/connectedEnvironments?api-version={}".format( management_hostname.strip('/'), sub_id, - cls.get_api_version()) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() @@ -171,7 +165,7 @@ def list_by_resource_group(cls, cmd, resource_group_name, formatter=lambda x: x) management_hostname.strip('/'), sub_id, resource_group_name, - cls.get_api_version()) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() diff --git a/src/containerapp-preview/azext_containerapp_preview/tests/latest/test_containerapp_preview_scenario.py b/src/containerapp-preview/azext_containerapp_preview/tests/latest/test_containerapp_preview_scenario.py index 38db7fe5b0d..ee8ab4eb884 100644 --- a/src/containerapp-preview/azext_containerapp_preview/tests/latest/test_containerapp_preview_scenario.py +++ b/src/containerapp-preview/azext_containerapp_preview/tests/latest/test_containerapp_preview_scenario.py @@ -24,16 +24,6 @@ def setUp(self): cmd = ['azdev', 'extension', 'add', 'k8s-extension'] run(cmd, check=True) - def tearDown(self): - cmd = ['azdev', 'extension', 'remove', 'containerapp'] - run(cmd, check=True) - cmd = ['azdev', 'extension', 'remove', 'connectedk8s'] - run(cmd, check=True) - cmd = ['azdev', 'extension', 'remove', 'k8s-extension'] - run(cmd, check=True) - - super(ContainerappScenarioTest, self).tearDown() - @ResourceGroupPreparer(location="eastus", random_name_length=15) def test_containerapp_preview_environment_type(self, resource_group): self.cmd('configure --defaults location={}'.format(TEST_LOCATION)) diff --git a/src/containerapp/azext_containerapp/_clients.py b/src/containerapp/azext_containerapp/_clients.py index c4cac87ecbc..430f40cb066 100644 --- a/src/containerapp/azext_containerapp/_clients.py +++ b/src/containerapp/azext_containerapp/_clients.py @@ -15,7 +15,6 @@ logger = get_logger(__name__) -PREVIEW_API_VERSION = "2023-04-01-preview" CURRENT_API_VERSION = "2023-04-01-preview" POLLING_TIMEOUT = 600 # how many seconds before exiting POLLING_SECONDS = 2 # how many seconds between requests @@ -147,10 +146,11 @@ def _extract_delay(response): class ContainerAppClient(): + api_version = CURRENT_API_VERSION + @classmethod def create_or_update(cls, cmd, resource_group_name, name, container_app_envelope, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}?api-version={}" request_url = url_fmt.format( @@ -158,7 +158,7 @@ def create_or_update(cls, cmd, resource_group_name, name, container_app_envelope sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PUT", request_url, body=json.dumps(container_app_envelope)) @@ -173,7 +173,7 @@ def create_or_update(cls, cmd, resource_group_name, name, container_app_envelope sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -182,8 +182,6 @@ def create_or_update(cls, cmd, resource_group_name, name, container_app_envelope def update(cls, cmd, resource_group_name, name, container_app_envelope, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION - sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}?api-version={}" request_url = url_fmt.format( @@ -191,7 +189,7 @@ def update(cls, cmd, resource_group_name, name, container_app_envelope, no_wait= sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PATCH", request_url, body=json.dumps(container_app_envelope)) @@ -210,7 +208,6 @@ def update(cls, cmd, resource_group_name, name, container_app_envelope, no_wait= @classmethod def delete(cls, cmd, resource_group_name, name, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}?api-version={}" request_url = url_fmt.format( @@ -218,7 +215,7 @@ def delete(cls, cmd, resource_group_name, name, no_wait=False): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "DELETE", request_url) @@ -233,7 +230,6 @@ def delete(cls, cmd, resource_group_name, name, no_wait=False): @classmethod def show(cls, cmd, resource_group_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}?api-version={}" request_url = url_fmt.format( @@ -241,7 +237,7 @@ def show(cls, cmd, resource_group_name, name): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -251,12 +247,11 @@ def list_by_subscription(cls, cmd, formatter=lambda x: x): app_list = [] management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) request_url = "{}/subscriptions/{}/providers/Microsoft.App/containerApps?api-version={}".format( management_hostname.strip('/'), sub_id, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() @@ -279,14 +274,13 @@ def list_by_resource_group(cls, cmd, resource_group_name, formatter=lambda x: x) app_list = [] management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps?api-version={}" request_url = url_fmt.format( management_hostname.strip('/'), sub_id, resource_group_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() @@ -308,7 +302,6 @@ def list_by_resource_group(cls, cmd, resource_group_name, formatter=lambda x: x) def list_secrets(cls, cmd, resource_group_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}/listSecrets?api-version={}" request_url = url_fmt.format( @@ -316,7 +309,7 @@ def list_secrets(cls, cmd, resource_group_name, name): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "POST", request_url, body=None) return r.json() @@ -327,7 +320,6 @@ def list_revisions(cls, cmd, resource_group_name, name, formatter=lambda x: x): revisions_list = [] management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}/revisions?api-version={}" request_url = url_fmt.format( @@ -335,7 +327,7 @@ def list_revisions(cls, cmd, resource_group_name, name, formatter=lambda x: x): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() @@ -356,7 +348,6 @@ def list_revisions(cls, cmd, resource_group_name, name, formatter=lambda x: x): @classmethod def show_revision(cls, cmd, resource_group_name, container_app_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}/revisions/{}?api-version={}" request_url = url_fmt.format( @@ -365,7 +356,7 @@ def show_revision(cls, cmd, resource_group_name, container_app_name, name): resource_group_name, container_app_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -373,7 +364,6 @@ def show_revision(cls, cmd, resource_group_name, container_app_name, name): @classmethod def restart_revision(cls, cmd, resource_group_name, container_app_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}/revisions/{}/restart?api-version={}" request_url = url_fmt.format( @@ -382,7 +372,7 @@ def restart_revision(cls, cmd, resource_group_name, container_app_name, name): resource_group_name, container_app_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "POST", request_url) return r.json() @@ -390,7 +380,6 @@ def restart_revision(cls, cmd, resource_group_name, container_app_name, name): @classmethod def activate_revision(cls, cmd, resource_group_name, container_app_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}/revisions/{}/activate?api-version={}" request_url = url_fmt.format( @@ -399,7 +388,7 @@ def activate_revision(cls, cmd, resource_group_name, container_app_name, name): resource_group_name, container_app_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "POST", request_url) return r.json() @@ -407,7 +396,6 @@ def activate_revision(cls, cmd, resource_group_name, container_app_name, name): @classmethod def deactivate_revision(cls, cmd, resource_group_name, container_app_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}/revisions/{}/deactivate?api-version={}" request_url = url_fmt.format( @@ -416,7 +404,7 @@ def deactivate_revision(cls, cmd, resource_group_name, container_app_name, name) resource_group_name, container_app_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "POST", request_url) return r.json() @@ -434,7 +422,7 @@ def list_replicas(cls, cmd, resource_group_name, container_app_name, revision_na resource_group_name, container_app_name, revision_name, - CURRENT_API_VERSION) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() @@ -462,7 +450,7 @@ def get_replica(cls, cmd, resource_group_name, container_app_name, revision_name container_app_name, revision_name, replica_name, - CURRENT_API_VERSION) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -477,7 +465,7 @@ def get_auth_token(cls, cmd, resource_group_name, name): sub_id, resource_group_name, name, - CURRENT_API_VERSION) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "POST", request_url) return r.json() @@ -492,7 +480,7 @@ def validate_domain(cls, cmd, resource_group_name, name, hostname): sub_id, resource_group_name, name, - CURRENT_API_VERSION, + cls.api_version, hostname) r = send_raw_request(cmd.cli_ctx, "POST", request_url) @@ -500,10 +488,15 @@ def validate_domain(cls, cmd, resource_group_name, name, hostname): class ManagedEnvironmentClient(): + api_version = CURRENT_API_VERSION + + @classmethod + def get_api_version(cls): + return CURRENT_API_VERSION + @classmethod def create(cls, cmd, resource_group_name, name, managed_environment_envelope, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}?api-version={}" request_url = url_fmt.format( @@ -511,7 +504,7 @@ def create(cls, cmd, resource_group_name, name, managed_environment_envelope, no sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PUT", request_url, body=json.dumps(managed_environment_envelope)) @@ -527,7 +520,6 @@ def create(cls, cmd, resource_group_name, name, managed_environment_envelope, no @classmethod def update(cls, cmd, resource_group_name, name, managed_environment_envelope, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}?api-version={}" request_url = url_fmt.format( @@ -535,7 +527,7 @@ def update(cls, cmd, resource_group_name, name, managed_environment_envelope, no sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PATCH", request_url, body=json.dumps(managed_environment_envelope)) @@ -560,7 +552,6 @@ def update(cls, cmd, resource_group_name, name, managed_environment_envelope, no @classmethod def delete(cls, cmd, resource_group_name, name, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}?api-version={}" request_url = url_fmt.format( @@ -568,7 +559,7 @@ def delete(cls, cmd, resource_group_name, name, no_wait=False): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "DELETE", request_url) @@ -584,7 +575,6 @@ def delete(cls, cmd, resource_group_name, name, no_wait=False): @classmethod def show(cls, cmd, resource_group_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}?api-version={}" request_url = url_fmt.format( @@ -592,7 +582,7 @@ def show(cls, cmd, resource_group_name, name): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -602,12 +592,11 @@ def list_by_subscription(cls, cmd, formatter=lambda x: x): env_list = [] management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) request_url = "{}/subscriptions/{}/providers/Microsoft.App/managedEnvironments?api-version={}".format( management_hostname.strip('/'), sub_id, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() @@ -630,14 +619,13 @@ def list_by_resource_group(cls, cmd, resource_group_name, formatter=lambda x: x) env_list = [] management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments?api-version={}" request_url = url_fmt.format( management_hostname.strip('/'), sub_id, resource_group_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() @@ -658,7 +646,6 @@ def list_by_resource_group(cls, cmd, resource_group_name, formatter=lambda x: x) @classmethod def show_certificate(cls, cmd, resource_group_name, name, certificate_name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/certificates/{}?api-version={}" request_url = url_fmt.format( @@ -667,7 +654,7 @@ def show_certificate(cls, cmd, resource_group_name, name, certificate_name): resource_group_name, name, certificate_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url, body=None) return r.json() @@ -675,7 +662,6 @@ def show_certificate(cls, cmd, resource_group_name, name, certificate_name): @classmethod def show_managed_certificate(cls, cmd, resource_group_name, name, certificate_name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = PREVIEW_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/managedCertificates/{}?api-version={}" request_url = url_fmt.format( @@ -684,7 +670,7 @@ def show_managed_certificate(cls, cmd, resource_group_name, name, certificate_na resource_group_name, name, certificate_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url, body=None) return r.json() @@ -694,7 +680,6 @@ def list_certificates(cls, cmd, resource_group_name, name, formatter=lambda x: x certs_list = [] management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/certificates?api-version={}" request_url = url_fmt.format( @@ -702,7 +687,7 @@ def list_certificates(cls, cmd, resource_group_name, name, formatter=lambda x: x sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url, body=None) j = r.json() @@ -716,7 +701,6 @@ def list_managed_certificates(cls, cmd, resource_group_name, name, formatter=lam certs_list = [] management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = PREVIEW_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/managedCertificates?api-version={}" request_url = url_fmt.format( @@ -724,7 +708,7 @@ def list_managed_certificates(cls, cmd, resource_group_name, name, formatter=lam sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url, body=None) j = r.json() @@ -736,7 +720,6 @@ def list_managed_certificates(cls, cmd, resource_group_name, name, formatter=lam @classmethod def create_or_update_certificate(cls, cmd, resource_group_name, name, certificate_name, certificate): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/certificates/{}?api-version={}" request_url = url_fmt.format( @@ -745,7 +728,7 @@ def create_or_update_certificate(cls, cmd, resource_group_name, name, certificat resource_group_name, name, certificate_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PUT", request_url, body=json.dumps(certificate)) return r.json() @@ -753,7 +736,6 @@ def create_or_update_certificate(cls, cmd, resource_group_name, name, certificat @classmethod def create_or_update_managed_certificate(cls, cmd, resource_group_name, name, certificate_name, certificate_envelop, no_wait=False, is_TXT=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = PREVIEW_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/managedCertificates/{}?api-version={}" request_url = url_fmt.format( @@ -762,7 +744,7 @@ def create_or_update_managed_certificate(cls, cmd, resource_group_name, name, ce resource_group_name, name, certificate_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PUT", request_url, body=json.dumps(certificate_envelop)) if no_wait and not is_TXT: @@ -798,7 +780,6 @@ def create_or_update_managed_certificate(cls, cmd, resource_group_name, name, ce @classmethod def delete_certificate(cls, cmd, resource_group_name, name, certificate_name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/certificates/{}?api-version={}" request_url = url_fmt.format( @@ -807,14 +788,13 @@ def delete_certificate(cls, cmd, resource_group_name, name, certificate_name): resource_group_name, name, certificate_name, - api_version) + cls.api_version) return send_raw_request(cmd.cli_ctx, "DELETE", request_url, body=None) @classmethod def delete_managed_certificate(cls, cmd, resource_group_name, name, certificate_name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = PREVIEW_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/managedCertificates/{}?api-version={}" request_url = url_fmt.format( @@ -823,14 +803,13 @@ def delete_managed_certificate(cls, cmd, resource_group_name, name, certificate_ resource_group_name, name, certificate_name, - api_version) + cls.api_version) return send_raw_request(cmd.cli_ctx, "DELETE", request_url, body=None) @classmethod def check_name_availability(cls, cmd, resource_group_name, name, name_availability_request): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/checkNameAvailability?api-version={}" request_url = url_fmt.format( @@ -838,7 +817,7 @@ def check_name_availability(cls, cmd, resource_group_name, name, name_availabili sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "POST", request_url, body=json.dumps(name_availability_request)) return r.json() @@ -853,24 +832,25 @@ def get_auth_token(cls, cmd, resource_group_name, name): sub_id, resource_group_name, name, - CURRENT_API_VERSION) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "POST", request_url) return r.json() class WorkloadProfileClient(): + api_version = CURRENT_API_VERSION + @classmethod def list_supported(cls, cmd, location): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/providers/Microsoft.App/locations/{}/availableManagedEnvironmentsWorkloadProfileTypes?api-version={}" request_url = url_fmt.format( management_hostname.strip('/'), sub_id, location, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json().get("value") @@ -878,7 +858,6 @@ def list_supported(cls, cmd, location): @classmethod def list(cls, cmd, resource_group_name, env_name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourcegroups/{}/providers/Microsoft.App/managedEnvironments/{}/workloadProfileStates?api-version={}" request_url = url_fmt.format( @@ -886,17 +865,18 @@ def list(cls, cmd, resource_group_name, env_name): sub_id, resource_group_name, env_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json().get("value") class ContainerAppsJobClient(): + api_version = CURRENT_API_VERSION + @classmethod def create_or_update(cls, cmd, resource_group_name, name, containerapp_job_envelope, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/jobs/{}?api-version={}" request_url = url_fmt.format( @@ -904,7 +884,7 @@ def create_or_update(cls, cmd, resource_group_name, name, containerapp_job_envel sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PUT", request_url, body=json.dumps(containerapp_job_envelope)) @@ -917,7 +897,7 @@ def create_or_update(cls, cmd, resource_group_name, name, containerapp_job_envel sub_id, resource_group_name, name, - api_version) + cls.api_version) return poll(cmd, request_url, "inprogress") return r.json() @@ -926,8 +906,6 @@ def create_or_update(cls, cmd, resource_group_name, name, containerapp_job_envel def update(cls, cmd, resource_group_name, name, containerapp_job_envelope, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION - sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/jobs/{}?api-version={}" request_url = url_fmt.format( @@ -935,7 +913,7 @@ def update(cls, cmd, resource_group_name, name, containerapp_job_envelope, no_wa sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PATCH", request_url, body=json.dumps(containerapp_job_envelope)) @@ -948,7 +926,7 @@ def update(cls, cmd, resource_group_name, name, containerapp_job_envelope, no_wa sub_id, resource_group_name, name, - api_version) + cls.api_version) response = poll_results(cmd, request_url) if response is None: raise ResourceNotFoundError("Could not find a container App Job") @@ -960,7 +938,6 @@ def update(cls, cmd, resource_group_name, name, containerapp_job_envelope, no_wa @classmethod def show(cls, cmd, resource_group_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/jobs/{}?api-version={}" request_url = url_fmt.format( @@ -968,7 +945,7 @@ def show(cls, cmd, resource_group_name, name): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -978,12 +955,11 @@ def list_by_subscription(cls, cmd, formatter=lambda x: x): app_list = [] management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) request_url = "{}/subscriptions/{}/providers/Microsoft.App/jobs?api-version={}".format( management_hostname.strip('/'), sub_id, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() @@ -998,14 +974,13 @@ def list_by_resource_group(cls, cmd, resource_group_name, formatter=lambda x: x) app_list = [] management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/jobs?api-version={}" request_url = url_fmt.format( management_hostname.strip('/'), sub_id, resource_group_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() @@ -1018,7 +993,6 @@ def list_by_resource_group(cls, cmd, resource_group_name, formatter=lambda x: x) @classmethod def delete(cls, cmd, resource_group_name, name, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/jobs/{}?api-version={}" request_url = url_fmt.format( @@ -1026,7 +1000,7 @@ def delete(cls, cmd, resource_group_name, name, no_wait=False): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "DELETE", request_url) @@ -1039,7 +1013,7 @@ def delete(cls, cmd, resource_group_name, name, no_wait=False): sub_id, resource_group_name, name, - api_version) + cls.api_version) if r.status_code == 202: from azure.cli.core.azclierror import ResourceNotFoundError @@ -1052,7 +1026,6 @@ def delete(cls, cmd, resource_group_name, name, no_wait=False): @classmethod def start_job(cls, cmd, resource_group_name, name, containerapp_job_start_envelope): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/jobs/{}/start?api-version={}" request_url = url_fmt.format( @@ -1060,7 +1033,7 @@ def start_job(cls, cmd, resource_group_name, name, containerapp_job_start_envelo sub_id, resource_group_name, name, - api_version) + cls.api_version) if containerapp_job_start_envelope is None: r = send_raw_request(cmd.cli_ctx, "POST", request_url) else: @@ -1071,7 +1044,6 @@ def start_job(cls, cmd, resource_group_name, name, containerapp_job_start_envelo @classmethod def stop_job(cls, cmd, resource_group_name, name, job_execution_name, job_execution_names=None): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) if not job_execution_name: @@ -1081,7 +1053,7 @@ def stop_job(cls, cmd, resource_group_name, name, job_execution_name, job_execut sub_id, resource_group_name, name, - api_version) + cls.api_version) else: url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/jobs/{}/stop/{}?api-version={}" request_url = url_fmt.format( @@ -1090,7 +1062,7 @@ def stop_job(cls, cmd, resource_group_name, name, job_execution_name, job_execut resource_group_name, name, job_execution_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "POST", request_url, body=json.dumps(job_execution_names)) return r.json() @@ -1098,7 +1070,6 @@ def stop_job(cls, cmd, resource_group_name, name, job_execution_name, job_execut @classmethod def get_executions(cls, cmd, resource_group_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/jobs/{}/executions?api-version={}" request_url = url_fmt.format( @@ -1106,7 +1077,7 @@ def get_executions(cls, cmd, resource_group_name, name): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -1114,7 +1085,6 @@ def get_executions(cls, cmd, resource_group_name, name): @classmethod def get_single_execution(cls, cmd, resource_group_name, name, job_execution_name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/jobs/{}/executions/{}?api-version={}" request_url = url_fmt.format( @@ -1123,7 +1093,7 @@ def get_single_execution(cls, cmd, resource_group_name, name, job_execution_name resource_group_name, name, job_execution_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -1132,7 +1102,6 @@ def get_single_execution(cls, cmd, resource_group_name, name, job_execution_name def list_secrets(cls, cmd, resource_group_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/jobs/{}/listSecrets?api-version={}" request_url = url_fmt.format( @@ -1140,17 +1109,18 @@ def list_secrets(cls, cmd, resource_group_name, name): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "POST", request_url, body=None) return r.json() class GitHubActionClient(): + api_version = CURRENT_API_VERSION + @classmethod def create_or_update(cls, cmd, resource_group_name, name, github_action_envelope, headers, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}/sourcecontrols/current?api-version={}" request_url = url_fmt.format( @@ -1158,7 +1128,7 @@ def create_or_update(cls, cmd, resource_group_name, name, github_action_envelope sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PUT", request_url, body=json.dumps(github_action_envelope), headers=headers) @@ -1171,7 +1141,7 @@ def create_or_update(cls, cmd, resource_group_name, name, github_action_envelope sub_id, resource_group_name, name, - api_version) + cls.api_version) return poll(cmd, request_url, "inprogress") return r.json() @@ -1179,7 +1149,6 @@ def create_or_update(cls, cmd, resource_group_name, name, github_action_envelope @classmethod def show(cls, cmd, resource_group_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}/sourcecontrols/current?api-version={}" request_url = url_fmt.format( @@ -1187,7 +1156,7 @@ def show(cls, cmd, resource_group_name, name): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -1195,7 +1164,6 @@ def show(cls, cmd, resource_group_name, name): @classmethod def delete(cls, cmd, resource_group_name, name, headers, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/containerApps/{}/sourcecontrols/current?api-version={}" request_url = url_fmt.format( @@ -1203,7 +1171,7 @@ def delete(cls, cmd, resource_group_name, name, headers, no_wait=False): sub_id, resource_group_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "DELETE", request_url, headers=headers) @@ -1216,7 +1184,7 @@ def delete(cls, cmd, resource_group_name, name, headers, no_wait=False): sub_id, resource_group_name, name, - api_version) + cls.api_version) if r.status_code == 202: from azure.cli.core.azclierror import ResourceNotFoundError @@ -1257,11 +1225,12 @@ def get_workflow_name(cls, cmd, repo, branch_name, container_app_name, token): class DaprComponentClient(): + api_version = CURRENT_API_VERSION + @classmethod def create_or_update(cls, cmd, resource_group_name, environment_name, name, dapr_component_envelope, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/daprComponents/{}?api-version={}" request_url = url_fmt.format( @@ -1270,7 +1239,7 @@ def create_or_update(cls, cmd, resource_group_name, environment_name, name, dapr resource_group_name, environment_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PUT", request_url, body=json.dumps(dapr_component_envelope)) @@ -1284,7 +1253,7 @@ def create_or_update(cls, cmd, resource_group_name, environment_name, name, dapr resource_group_name, environment_name, name, - api_version) + cls.api_version) return poll(cmd, request_url, "inprogress") return r.json() @@ -1292,7 +1261,6 @@ def create_or_update(cls, cmd, resource_group_name, environment_name, name, dapr @classmethod def delete(cls, cmd, resource_group_name, environment_name, name, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/daprComponents/{}?api-version={}" request_url = url_fmt.format( @@ -1301,7 +1269,7 @@ def delete(cls, cmd, resource_group_name, environment_name, name, no_wait=False) resource_group_name, environment_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "DELETE", request_url) @@ -1315,7 +1283,7 @@ def delete(cls, cmd, resource_group_name, environment_name, name, no_wait=False) resource_group_name, environment_name, name, - api_version) + cls.api_version) if r.status_code == 202: from azure.cli.core.azclierror import ResourceNotFoundError @@ -1329,7 +1297,6 @@ def delete(cls, cmd, resource_group_name, environment_name, name, no_wait=False) @classmethod def show(cls, cmd, resource_group_name, environment_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/daprComponents/{}?api-version={}" request_url = url_fmt.format( @@ -1338,7 +1305,7 @@ def show(cls, cmd, resource_group_name, environment_name, name): resource_group_name, environment_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -1348,14 +1315,13 @@ def list(cls, cmd, resource_group_name, environment_name, formatter=lambda x: x) app_list = [] management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) request_url = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/daprComponents?api-version={}".format( management_hostname.strip('/'), sub_id, resource_group_name, environment_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() @@ -1375,10 +1341,11 @@ def list(cls, cmd, resource_group_name, environment_name, formatter=lambda x: x) class StorageClient(): + api_version = CURRENT_API_VERSION + @classmethod def create_or_update(cls, cmd, resource_group_name, env_name, name, storage_envelope, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/storages/{}?api-version={}" request_url = url_fmt.format( @@ -1387,7 +1354,7 @@ def create_or_update(cls, cmd, resource_group_name, env_name, name, storage_enve resource_group_name, env_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "PUT", request_url, body=json.dumps(storage_envelope)) @@ -1401,7 +1368,7 @@ def create_or_update(cls, cmd, resource_group_name, env_name, name, storage_enve resource_group_name, env_name, name, - api_version) + cls.api_version) return poll(cmd, request_url, "waiting") return r.json() @@ -1409,7 +1376,6 @@ def create_or_update(cls, cmd, resource_group_name, env_name, name, storage_enve @classmethod def delete(cls, cmd, resource_group_name, env_name, name, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/storages/{}?api-version={}" request_url = url_fmt.format( @@ -1418,7 +1384,7 @@ def delete(cls, cmd, resource_group_name, env_name, name, no_wait=False): resource_group_name, env_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "DELETE", request_url) @@ -1432,7 +1398,7 @@ def delete(cls, cmd, resource_group_name, env_name, name, no_wait=False): resource_group_name, env_name, name, - api_version) + cls.api_version) if r.status_code == 200: # 200 successful delete, 204 means storage not found from azure.cli.core.azclierror import ResourceNotFoundError try: @@ -1445,7 +1411,6 @@ def delete(cls, cmd, resource_group_name, env_name, name, no_wait=False): @classmethod def show(cls, cmd, resource_group_name, env_name, name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/storages/{}?api-version={}" request_url = url_fmt.format( @@ -1454,7 +1419,7 @@ def show(cls, cmd, resource_group_name, env_name, name): resource_group_name, env_name, name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() @@ -1464,7 +1429,6 @@ def list(cls, cmd, resource_group_name, env_name, formatter=lambda x: x): env_list = [] management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) url_fmt = "{}/subscriptions/{}/resourceGroups/{}/providers/Microsoft.App/managedEnvironments/{}/storages?api-version={}" request_url = url_fmt.format( @@ -1472,7 +1436,7 @@ def list(cls, cmd, resource_group_name, env_name, formatter=lambda x: x): sub_id, resource_group_name, env_name, - api_version) + cls.api_version) r = send_raw_request(cmd.cli_ctx, "GET", request_url) j = r.json() @@ -1492,12 +1456,14 @@ def list(cls, cmd, resource_group_name, env_name, formatter=lambda x: x): class AuthClient(): + api_version = CURRENT_API_VERSION + @classmethod - def create_or_update(cls, cmd, resource_group_name, container_app_name, auth_config_name, auth_config_envelope, no_wait=False): + def create_or_update(cls, cmd, resource_group_name, container_app_name, auth_config_name, auth_config_envelope, + no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) - request_url = f"{management_hostname}subscriptions/{sub_id}/resourceGroups/{resource_group_name}/providers/Microsoft.App/containerApps/{container_app_name}/authConfigs/{auth_config_name}?api-version={api_version}" + request_url = f"{management_hostname}subscriptions/{sub_id}/resourceGroups/{resource_group_name}/providers/Microsoft.App/containerApps/{container_app_name}/authConfigs/{auth_config_name}?api-version={cls.api_version}" if "properties" not in auth_config_envelope: # sdk does this for us temp_env = auth_config_envelope @@ -1509,7 +1475,7 @@ def create_or_update(cls, cmd, resource_group_name, container_app_name, auth_con if no_wait: return r.json() elif r.status_code == 201: - request_url = f"{management_hostname}subscriptions/{sub_id}/resourceGroups/{resource_group_name}/providers/Microsoft.App/containerApps/{container_app_name}/authConfigs/{auth_config_name}?api-version={api_version}" + request_url = f"{management_hostname}subscriptions/{sub_id}/resourceGroups/{resource_group_name}/providers/Microsoft.App/containerApps/{container_app_name}/authConfigs/{auth_config_name}?api-version={cls.api_version}" return poll(cmd, request_url, "waiting") return r.json() @@ -1517,16 +1483,15 @@ def create_or_update(cls, cmd, resource_group_name, container_app_name, auth_con @classmethod def delete(cls, cmd, resource_group_name, container_app_name, auth_config_name, no_wait=False): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) - request_url = f"{management_hostname}subscriptions/{sub_id}/resourceGroups/{resource_group_name}/providers/Microsoft.App/containerApps/{container_app_name}/authConfigs/{auth_config_name}?api-version={api_version}" + request_url = f"{management_hostname}subscriptions/{sub_id}/resourceGroups/{resource_group_name}/providers/Microsoft.App/containerApps/{container_app_name}/authConfigs/{auth_config_name}?api-version={cls.api_version}" r = send_raw_request(cmd.cli_ctx, "DELETE", request_url) if no_wait: return # API doesn't return JSON (it returns no content) elif r.status_code in [200, 201, 202, 204]: - request_url = f"{management_hostname}subscriptions/{sub_id}/resourceGroups/{resource_group_name}/providers/Microsoft.App/containerApps/{container_app_name}/authConfigs/{auth_config_name}?api-version={api_version}" + request_url = f"{management_hostname}subscriptions/{sub_id}/resourceGroups/{resource_group_name}/providers/Microsoft.App/containerApps/{container_app_name}/authConfigs/{auth_config_name}?api-version={cls.api_version}" if r.status_code == 200: # 200 successful delete, 204 means storage not found from azure.cli.core.azclierror import ResourceNotFoundError try: @@ -1539,9 +1504,8 @@ def delete(cls, cmd, resource_group_name, container_app_name, auth_config_name, @classmethod def get(cls, cmd, resource_group_name, container_app_name, auth_config_name): management_hostname = cmd.cli_ctx.cloud.endpoints.resource_manager - api_version = CURRENT_API_VERSION sub_id = get_subscription_id(cmd.cli_ctx) - request_url = f"{management_hostname}subscriptions/{sub_id}/resourceGroups/{resource_group_name}/providers/Microsoft.App/containerApps/{container_app_name}/authConfigs/{auth_config_name}?api-version={api_version}" + request_url = f"{management_hostname}subscriptions/{sub_id}/resourceGroups/{resource_group_name}/providers/Microsoft.App/containerApps/{container_app_name}/authConfigs/{auth_config_name}?api-version={cls.api_version}" r = send_raw_request(cmd.cli_ctx, "GET", request_url) return r.json() diff --git a/src/containerapp/azext_containerapp/containerapp_decorator.py b/src/containerapp/azext_containerapp/containerapp_decorator.py index 696597082fc..d43f3c00a37 100644 --- a/src/containerapp/azext_containerapp/containerapp_decorator.py +++ b/src/containerapp/azext_containerapp/containerapp_decorator.py @@ -11,7 +11,7 @@ from azure.cli.core.azclierror import ( RequiredArgumentMissingError, - ValidationError, ResourceNotFoundError) + ValidationError) from azure.cli.core.commands.client_factory import get_subscription_id from knack.log import get_logger @@ -21,7 +21,7 @@ from msrest.exceptions import DeserializationError from ._clients import ManagedEnvironmentClient -from ._client_factory import handle_raw_exception +from ._client_factory import handle_raw_exception, handle_non_404_exception from ._models import ( Ingress as IngressModel, @@ -339,8 +339,8 @@ def construct_containerapp(self): try: managed_env_info = self.get_environment_client().show(cmd=self.cmd, resource_group_name=managed_env_rg, name=managed_env_name) - except ResourceNotFoundError: - pass + except Exception as e: + handle_non_404_exception(e) if not managed_env_info: raise ValidationError("The environment '{}' does not exist. Specify a valid environment".format(self.get_argument_managed_env())) @@ -657,8 +657,8 @@ def set_up_create_containerapp_yaml(self, name, file_name): try: env_info = self.get_environment_client().show(cmd=self.cmd, resource_group_name=env_rg, name=env_name) - except ResourceNotFoundError: - pass + except Exception as e: + handle_non_404_exception(e) if not env_info: raise ValidationError("The environment '{}' in resource group '{}' was not found".format(env_name, env_rg))