diff --git a/src/azure-cli-core/azure/cli/core/_profile.py b/src/azure-cli-core/azure/cli/core/_profile.py index 38829a46af8..d2660332e9e 100644 --- a/src/azure-cli-core/azure/cli/core/_profile.py +++ b/src/azure-cli-core/azure/cli/core/_profile.py @@ -221,7 +221,7 @@ def login(self, def login_with_managed_identity(self, identity_id=None, allow_no_subscriptions=None): import jwt - from azure.mgmt.core.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id from azure.cli.core.auth.adal_authentication import MSIAuthenticationWrapper resource = self.cli_ctx.cloud.endpoints.active_directory_resource_id diff --git a/src/azure-cli-core/azure/cli/core/aaz/_arg_fmt.py b/src/azure-cli-core/azure/cli/core/aaz/_arg_fmt.py index c022ee8dea3..1137fcde540 100644 --- a/src/azure-cli-core/azure/cli/core/aaz/_arg_fmt.py +++ b/src/azure-cli-core/azure/cli/core/aaz/_arg_fmt.py @@ -669,7 +669,7 @@ def __init__(self, template=None): self._template = self._Template(template) def __call__(self, ctx, value): - from azure.mgmt.core.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id assert isinstance(value, AAZSimpleValue) diff --git a/src/azure-cli-core/azure/cli/core/arm_tools.py b/src/azure-cli-core/azure/cli/core/arm_tools.py new file mode 100644 index 00000000000..c1753c57b3a --- /dev/null +++ b/src/azure-cli-core/azure/cli/core/arm_tools.py @@ -0,0 +1,16 @@ +# -------------------------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for license information. +# -------------------------------------------------------------------------------------------- + +""" +This file contains util tools for working with ARM resources. + +Initially, they were from msrestazure.tools. Now we import them from azure.mgmt.core.tools. + +In the future, we many consider vendoring them or providing our own implementations. +""" + +# ATTENTION: Importing from azure.mgmt.core is time-consuming. Only import this file when necessary. + +from azure.mgmt.core.tools import parse_resource_id, is_valid_resource_id, resource_id diff --git a/src/azure-cli-core/azure/cli/core/commands/arm.py b/src/azure-cli-core/azure/cli/core/commands/arm.py index 28d1e0f5c68..af807ffa0c3 100644 --- a/src/azure-cli-core/azure/cli/core/commands/arm.py +++ b/src/azure-cli-core/azure/cli/core/commands/arm.py @@ -169,7 +169,7 @@ def deployment_validate_table_format(result): class ResourceId(str): def __new__(cls, val): - from azure.mgmt.core.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(val): raise ValueError() return str.__new__(cls, val) @@ -316,7 +316,7 @@ def assemble_json(ids): if full_id_list: setattr(namespace, '_ids', full_id_list) - from azure.mgmt.core.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id for val in full_id_list: if not is_valid_resource_id(val): raise CLIError('invalid resource ID: {}'.format(val)) @@ -786,7 +786,7 @@ def _gen_guid(): def get_arm_resource_by_id(cli_ctx, arm_id, api_version=None): - from azure.mgmt.core.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id if not is_valid_resource_id(arm_id): raise CLIError("'{}' is not a valid ID.".format(arm_id)) diff --git a/src/azure-cli-core/azure/cli/core/commands/template_create.py b/src/azure-cli-core/azure/cli/core/commands/template_create.py index c54f61bc158..027fe63f707 100644 --- a/src/azure-cli-core/azure/cli/core/commands/template_create.py +++ b/src/azure-cli-core/azure/cli/core/commands/template_create.py @@ -53,7 +53,7 @@ def get_folded_parameter_help_string( def _validate_name_or_id( cli_ctx, resource_group_name, property_value, property_type, parent_value, parent_type): from azure.cli.core.commands.client_factory import get_subscription_id - from azure.mgmt.core.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id has_parent = parent_type is not None if is_valid_resource_id(property_value): resource_id_parts = parse_resource_id(property_value) @@ -95,7 +95,7 @@ def get_folded_parameter_validator( # construct the validator def validator(cmd, namespace): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id type_field_name = '{}_type'.format(property_name) property_val = getattr(namespace, property_name, None) parent_val = getattr(namespace, parent_name, None) if parent_name else None diff --git a/src/azure-cli/azure/cli/command_modules/acr/_utils.py b/src/azure-cli/azure/cli/command_modules/acr/_utils.py index c6f8b438a90..1ad978b9bae 100644 --- a/src/azure-cli/azure/cli/command_modules/acr/_utils.py +++ b/src/azure-cli/azure/cli/command_modules/acr/_utils.py @@ -587,7 +587,7 @@ def get_scope_map_from_id(cmd, scope_map_id): def resolve_identity_client_id(cli_ctx, managed_identity_resource_id): from azure.mgmt.msi import ManagedServiceIdentityClient from azure.cli.core.commands.client_factory import get_mgmt_service_client - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id res = parse_resource_id(managed_identity_resource_id) client = get_mgmt_service_client(cli_ctx, ManagedServiceIdentityClient, subscription_id=res['subscription']) diff --git a/src/azure-cli/azure/cli/command_modules/acr/check_health.py b/src/azure-cli/azure/cli/command_modules/acr/check_health.py index 5d99c75ad9f..b22b33dcabc 100644 --- a/src/azure-cli/azure/cli/command_modules/acr/check_health.py +++ b/src/azure-cli/azure/cli/command_modules/acr/check_health.py @@ -344,7 +344,7 @@ def _check_registry_health(cmd, registry_name, ignore_errors): def _check_private_endpoint(cmd, registry_name, vnet_of_private_endpoint): # pylint: disable=too-many-locals, too-many-statements import socket - from msrestazure.tools import parse_resource_id, is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id, resource_id if registry_name is None: raise CLIError("Registry name must be provided to verify DNS routings of its private endpoints") diff --git a/src/azure-cli/azure/cli/command_modules/acr/custom.py b/src/azure-cli/azure/cli/command_modules/acr/custom.py index fcbcb0ad9df..6114be9af4f 100644 --- a/src/azure-cli/azure/cli/command_modules/acr/custom.py +++ b/src/azure-cli/azure/cli/command_modules/acr/custom.py @@ -90,7 +90,7 @@ def acr_create(cmd, lro_poller = client.begin_create(resource_group_name, registry_name, registry) if workspace: - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from azure.cli.core.commands import LongRunningOperation from azure.cli.core.commands.client_factory import get_subscription_id acr = LongRunningOperation(cmd.cli_ctx)(lro_poller) @@ -609,7 +609,7 @@ def _analyze_identities(identities): def _ensure_identity_resource_id(subscription_id, resource_group, resource): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id if is_valid_resource_id(resource): return resource return resource_id(subscription=subscription_id, diff --git a/src/azure-cli/azure/cli/command_modules/acr/import.py b/src/azure-cli/azure/cli/command_modules/acr/import.py index b9a315d69fe..97eb9d39876 100644 --- a/src/azure-cli/azure/cli/command_modules/acr/import.py +++ b/src/azure-cli/azure/cli/command_modules/acr/import.py @@ -5,7 +5,7 @@ from knack.util import CLIError from knack.log import get_logger -from msrestazure.tools import is_valid_resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id from azure.cli.command_modules.acr._docker_utils import get_login_server_suffix from azure.cli.core.commands import LongRunningOperation from azure.cli.core.util import sdk_no_wait diff --git a/src/azure-cli/azure/cli/command_modules/acr/network_rule.py b/src/azure-cli/azure/cli/command_modules/acr/network_rule.py index 5152747aff4..5df277420ce 100644 --- a/src/azure-cli/azure/cli/command_modules/acr/network_rule.py +++ b/src/azure-cli/azure/cli/command_modules/acr/network_rule.py @@ -122,13 +122,13 @@ def acr_network_rule_remove(cmd, def _validate_subnet(cli_ctx, subnet, vnet_name, resource_group_name): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id subnet_is_id = is_valid_resource_id(subnet) if subnet_is_id and not vnet_name: return subnet if subnet and not subnet_is_id and vnet_name: - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id from azure.cli.core.commands.client_factory import get_subscription_id return resource_id( subscription=get_subscription_id(cli_ctx), diff --git a/src/azure-cli/azure/cli/command_modules/acs/_roleassignments.py b/src/azure-cli/azure/cli/command_modules/acs/_roleassignments.py index 7242b4def21..eb4ab95c802 100644 --- a/src/azure-cli/azure/cli/command_modules/acs/_roleassignments.py +++ b/src/azure-cli/azure/cli/command_modules/acs/_roleassignments.py @@ -321,7 +321,7 @@ def ensure_aks_acr_role_assignment(cmd, assignee, registry_id, detach=False, is_ # pylint: disable=unused-argument def ensure_aks_acr(cmd, assignee, acr_name_or_id, subscription_id, detach=False, is_service_principal=True): - from msrestazure.tools import is_valid_resource_id, parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id # Check if the ACR exists by resource ID. if is_valid_resource_id(acr_name_or_id): diff --git a/src/azure-cli/azure/cli/command_modules/acs/_validators.py b/src/azure-cli/azure/cli/command_modules/acs/_validators.py index 6a228a8597b..7446b1bdd40 100644 --- a/src/azure-cli/azure/cli/command_modules/acs/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/acs/_validators.py @@ -365,7 +365,7 @@ def validate_pod_subnet_id(namespace): def _validate_subnet_id(subnet_id, name): if subnet_id is None or subnet_id == '': return - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(subnet_id): raise InvalidArgumentValueError(name + " is not a valid Azure resource ID.") @@ -374,7 +374,7 @@ def validate_ppg(namespace): if namespace.ppg is not None: if namespace.ppg == '': return - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(namespace.ppg): raise CLIError("--ppg is not a valid Azure resource ID.") @@ -478,7 +478,7 @@ def validate_assign_identity(namespace): if namespace.assign_identity is not None: if namespace.assign_identity == '': return - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(namespace.assign_identity): raise InvalidArgumentValueError("--assign-identity is not a valid Azure resource ID.") @@ -487,27 +487,27 @@ def validate_assign_kubelet_identity(namespace): if namespace.assign_kubelet_identity is not None: if namespace.assign_kubelet_identity == '': return - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(namespace.assign_kubelet_identity): raise InvalidArgumentValueError("--assign-kubelet-identity is not a valid Azure resource ID.") def validate_nodepool_id(namespace): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(namespace.nodepool_id): raise InvalidArgumentValueError("--nodepool-id is not a valid Azure resource ID.") def validate_snapshot_id(namespace): if namespace.snapshot_id: - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(namespace.snapshot_id): raise InvalidArgumentValueError("--snapshot-id is not a valid Azure resource ID.") def validate_host_group_id(namespace): if namespace.host_group_id: - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(namespace.host_group_id): raise InvalidArgumentValueError("--host-group-id is not a valid Azure resource ID.") @@ -515,7 +515,7 @@ def validate_host_group_id(namespace): def validate_crg_id(namespace): if namespace.crg_id is None: return - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(namespace.crg_id): raise InvalidArgumentValueError( "--crg-id is not a valid Azure resource ID.") @@ -630,7 +630,7 @@ def validate_azure_keyvault_kms_key_vault_resource_id(namespace): key_vault_resource_id = namespace.azure_keyvault_kms_key_vault_resource_id if key_vault_resource_id is None or key_vault_resource_id == '': return - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(key_vault_resource_id): raise InvalidArgumentValueError("--azure-keyvault-kms-key-vault-resource-id is not a valid Azure resource ID.") @@ -792,7 +792,7 @@ def validate_application_security_groups(namespace): if not asg_ids: return - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id for asg in asg_ids: if not is_valid_resource_id(asg): raise InvalidArgumentValueError(asg + " is not a valid Azure resource ID.") diff --git a/src/azure-cli/azure/cli/command_modules/acs/addonconfiguration.py b/src/azure-cli/azure/cli/command_modules/acs/addonconfiguration.py index dfdd8a8822c..a3af6d042f1 100644 --- a/src/azure-cli/azure/cli/command_modules/acs/addonconfiguration.py +++ b/src/azure-cli/azure/cli/command_modules/acs/addonconfiguration.py @@ -24,7 +24,7 @@ from azure.cli.core.util import send_raw_request from azure.core.exceptions import HttpResponseError from knack.log import get_logger -from msrestazure.tools import parse_resource_id, resource_id +from azure.cli.core.arm_tools import parse_resource_id, resource_id logger = get_logger(__name__) # mapping for azure public cloud diff --git a/src/azure-cli/azure/cli/command_modules/acs/azuremonitormetrics/amw/helper.py b/src/azure-cli/azure/cli/command_modules/acs/azuremonitormetrics/amw/helper.py index db3bce14e77..8832ec72f71 100644 --- a/src/azure-cli/azure/cli/command_modules/acs/azuremonitormetrics/amw/helper.py +++ b/src/azure-cli/azure/cli/command_modules/acs/azuremonitormetrics/amw/helper.py @@ -11,7 +11,7 @@ def get_amw_region(cmd, azure_monitor_workspace_resource_id): import re - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id # Define the allowed characters in the final string allowed_chars = re.compile(r'[^a-zA-Z0-9]') diff --git a/src/azure-cli/azure/cli/command_modules/acs/azuremonitormetrics/helper.py b/src/azure-cli/azure/cli/command_modules/acs/azuremonitormetrics/helper.py index 5e91173d065..d9e7ee7ac0f 100644 --- a/src/azure-cli/azure/cli/command_modules/acs/azuremonitormetrics/helper.py +++ b/src/azure-cli/azure/cli/command_modules/acs/azuremonitormetrics/helper.py @@ -65,7 +65,7 @@ def register_rps(cmd, subscription_id, rp_namespaces, user_agent): def rp_registrations(cmd, cluster_subscription_id, raw_parameters): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id cluster_rp_namespaces = { "microsoft.insights": False, "microsoft.alertsmanagement": False diff --git a/src/azure-cli/azure/cli/command_modules/acs/custom.py b/src/azure-cli/azure/cli/command_modules/acs/custom.py index 4934f45368f..ccb368f74af 100644 --- a/src/azure-cli/azure/cli/command_modules/acs/custom.py +++ b/src/azure-cli/azure/cli/command_modules/acs/custom.py @@ -3189,7 +3189,7 @@ def aks_approuting_zone_list( resource_group_name, name ): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id mc = client.get(resource_group_name, name) if mc.ingress_profile and mc.ingress_profile.web_app_routing and mc.ingress_profile.web_app_routing.enabled: diff --git a/src/azure-cli/azure/cli/command_modules/acs/managed_cluster_decorator.py b/src/azure-cli/azure/cli/command_modules/acs/managed_cluster_decorator.py index af2bec43333..8153d36fb76 100644 --- a/src/azure-cli/azure/cli/command_modules/acs/managed_cluster_decorator.py +++ b/src/azure-cli/azure/cli/command_modules/acs/managed_cluster_decorator.py @@ -111,7 +111,7 @@ from knack.prompting import NoTTYException, prompt, prompt_pass, prompt_y_n from knack.util import CLIError from msrestazure.azure_exceptions import CloudError -from msrestazure.tools import is_valid_resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id logger = get_logger(__name__) @@ -6796,7 +6796,7 @@ def postprocessing_after_mc_created(self, cluster: ManagedCluster) -> None: # mdm metrics is supported only in azure public cloud, so add the role assignment only in this cloud cloud_name = self.cmd.cli_ctx.cloud.name if cloud_name.lower() == "azurecloud": - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id cluster_resource_id = resource_id( subscription=self.context.get_subscription_id(), @@ -8559,7 +8559,7 @@ def postprocessing_after_mc_created(self, cluster: ManagedCluster) -> None: # mdm metrics is supported only in azure public cloud, so add the role assignment only in this cloud cloud_name = self.cmd.cli_ctx.cloud.name if cloud_name.lower() == "azurecloud": - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id cluster_resource_id = resource_id( subscription=self.context.get_subscription_id(), diff --git a/src/azure-cli/azure/cli/command_modules/acs/tests/latest/test_aks_commands.py b/src/azure-cli/azure/cli/command_modules/acs/tests/latest/test_aks_commands.py index 186fe8b8bcc..a98699013b9 100644 --- a/src/azure-cli/azure/cli/command_modules/acs/tests/latest/test_aks_commands.py +++ b/src/azure-cli/azure/cli/command_modules/acs/tests/latest/test_aks_commands.py @@ -3663,7 +3663,7 @@ def test_aks_byo_appgw_with_ingress_appgw_addon(self, resource_group, resource_g self.cmd(create_appgw) # construct group id - from msrestazure.tools import parse_resource_id, resource_id + from azure.cli.core.arm_tools import parse_resource_id, resource_id parsed_vnet_id = parse_resource_id(vnet_id) group_id = resource_id(subscription=parsed_vnet_id["subscription"], resource_group=parsed_vnet_id["resource_group"]) diff --git a/src/azure-cli/azure/cli/command_modules/acs/tests/test_helper.py b/src/azure-cli/azure/cli/command_modules/acs/tests/test_helper.py index 15cd3a8704a..a0185403b82 100644 --- a/src/azure-cli/azure/cli/command_modules/acs/tests/test_helper.py +++ b/src/azure-cli/azure/cli/command_modules/acs/tests/test_helper.py @@ -18,7 +18,7 @@ def test_sanitize_resource_id(self): # Test case where resource_id needs leading slash and trailing slash removed self.assertEqual(sanitize_resource_id("test/resource/"), "/test/resource") - @patch('msrestazure.tools.parse_resource_id') + @patch('azure.cli.core.arm_tools.parse_resource_id') @patch('azure.cli.command_modules.acs.azuremonitormetrics.helper.register_rps') def test_subscription_id_selection(self, mock_register_rps, mock_parse_resource_id): # Mocking return value of parse_resource_id diff --git a/src/azure-cli/azure/cli/command_modules/ams/_validators.py b/src/azure-cli/azure/cli/command_modules/ams/_validators.py index a639567265a..42207cf37a4 100644 --- a/src/azure-cli/azure/cli/command_modules/ams/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/ams/_validators.py @@ -9,7 +9,7 @@ def validate_storage_account_id(cmd, namespace): """Validate storage account name""" from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.storage_account: if not is_valid_resource_id(namespace.storage_account): diff --git a/src/azure-cli/azure/cli/command_modules/ams/operations/mru.py b/src/azure-cli/azure/cli/command_modules/ams/operations/mru.py index 3329d85f258..11442cc0619 100644 --- a/src/azure-cli/azure/cli/command_modules/ams/operations/mru.py +++ b/src/azure-cli/azure/cli/command_modules/ams/operations/mru.py @@ -73,7 +73,7 @@ def __init__(self, cli_ctx, resource_group_name, account_name): self.access_token = self._get_v2_access_token() def _get_v2_api_endpoint(self, cli_ctx, resource_group_name, account_name): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id from azure.cli.command_modules.ams._sdk_utils import (get_media_namespace, get_media_type) access_token = self.profile.get_raw_token()[0][2].get('accessToken') diff --git a/src/azure-cli/azure/cli/command_modules/ams/tests/latest/test_ams_account_identity_scenarios.py b/src/azure-cli/azure/cli/command_modules/ams/tests/latest/test_ams_account_identity_scenarios.py index 886585db90c..3df7f9da3ec 100644 --- a/src/azure-cli/azure/cli/command_modules/ams/tests/latest/test_ams_account_identity_scenarios.py +++ b/src/azure-cli/azure/cli/command_modules/ams/tests/latest/test_ams_account_identity_scenarios.py @@ -4,7 +4,7 @@ # -------------------------------------------------------------------------------------------- from azure.cli.testsdk import ScenarioTest, ResourceGroupPreparer, StorageAccountPreparer -from msrestazure.tools import resource_id +from azure.cli.core.arm_tools import resource_id class AmsAccountIdentityTests(ScenarioTest): @ResourceGroupPreparer() @@ -78,4 +78,4 @@ def test_ams_add_user_identity(self, resource_group, storage_account_for_create) self.check('identity.type', 'UserAssigned') ]) - self.cmd('az ams account delete -n {amsname} -g {rg}') \ No newline at end of file + self.cmd('az ams account delete -n {amsname} -g {rg}') diff --git a/src/azure-cli/azure/cli/command_modules/appconfig/_validators.py b/src/azure-cli/azure/cli/command_modules/appconfig/_validators.py index a3b162a551a..0027880e1e2 100644 --- a/src/azure-cli/azure/cli/command_modules/appconfig/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/appconfig/_validators.py @@ -113,7 +113,7 @@ def validate_export(namespace): def validate_appservice_name_or_id(cmd, namespace): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import is_valid_resource_id, parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id if namespace.appservice_account: if not is_valid_resource_id(namespace.appservice_account): config_store_name = "" @@ -219,7 +219,7 @@ def validate_identity(namespace): return for identity in identities: - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if identity == '[all]' and subcommand == 'remove': continue diff --git a/src/azure-cli/azure/cli/command_modules/appservice/_validators.py b/src/azure-cli/azure/cli/command_modules/appservice/_validators.py index 17f6e8dc4b7..4b2b0dc66eb 100644 --- a/src/azure-cli/azure/cli/command_modules/appservice/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/appservice/_validators.py @@ -12,7 +12,7 @@ from azure.cli.core.commands.validators import validate_tags from knack.log import get_logger -from msrestazure.tools import is_valid_resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id from ._appservice_utils import _generic_site_operation from ._client_factory import web_client_factory diff --git a/src/azure-cli/azure/cli/command_modules/appservice/access_restrictions.py b/src/azure-cli/azure/cli/command_modules/appservice/access_restrictions.py index 7a882daa7e1..40e163dd0ef 100644 --- a/src/azure-cli/azure/cli/command_modules/appservice/access_restrictions.py +++ b/src/azure-cli/azure/cli/command_modules/appservice/access_restrictions.py @@ -12,7 +12,7 @@ from azure.mgmt.web.models import IpSecurityRestriction from importlib import import_module from knack.log import get_logger -from msrestazure.tools import is_valid_resource_id, resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, resource_id, parse_resource_id from ._appservice_utils import _generic_site_operation from .custom import get_site_configs diff --git a/src/azure-cli/azure/cli/command_modules/appservice/appservice_environment.py b/src/azure-cli/azure/cli/command_modules/appservice/appservice_environment.py index 6e89210e5bb..e47112fd2ca 100644 --- a/src/azure-cli/azure/cli/command_modules/appservice/appservice_environment.py +++ b/src/azure-cli/azure/cli/command_modules/appservice/appservice_environment.py @@ -21,7 +21,7 @@ MutuallyExclusiveArgumentError) from importlib import import_module from knack.log import get_logger -from msrestazure.tools import (parse_resource_id, is_valid_resource_id, resource_id) +from azure.cli.core.arm_tools import (parse_resource_id, is_valid_resource_id, resource_id) VERSION_2019_08_01 = "2019-08-01" VERSION_2019_10_01 = "2019-10-01" diff --git a/src/azure-cli/azure/cli/command_modules/appservice/custom.py b/src/azure-cli/azure/cli/command_modules/appservice/custom.py index e4b634d84e5..93d1a811bf9 100644 --- a/src/azure-cli/azure/cli/command_modules/appservice/custom.py +++ b/src/azure-cli/azure/cli/command_modules/appservice/custom.py @@ -32,7 +32,7 @@ from knack.log import get_logger from msrestazure.azure_exceptions import CloudError -from msrestazure.tools import is_valid_resource_id, parse_resource_id, resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id, resource_id from azure.mgmt.storage import StorageManagementClient from azure.mgmt.applicationinsights import ApplicationInsightsManagementClient diff --git a/src/azure-cli/azure/cli/command_modules/appservice/logicapp/custom.py b/src/azure-cli/azure/cli/command_modules/appservice/logicapp/custom.py index d16fdac9660..cd90a2bc331 100644 --- a/src/azure-cli/azure/cli/command_modules/appservice/logicapp/custom.py +++ b/src/azure-cli/azure/cli/command_modules/appservice/logicapp/custom.py @@ -4,7 +4,7 @@ # -------------------------------------------------------------------------------------------- from knack.log import get_logger -from msrestazure.tools import is_valid_resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id from azure.cli.core.commands import LongRunningOperation from azure.cli.core.azclierror import MutuallyExclusiveArgumentError diff --git a/src/azure-cli/azure/cli/command_modules/appservice/static_sites.py b/src/azure-cli/azure/cli/command_modules/appservice/static_sites.py index 9ecbcf22047..3c8e72b4be5 100644 --- a/src/azure-cli/azure/cli/command_modules/appservice/static_sites.py +++ b/src/azure-cli/azure/cli/command_modules/appservice/static_sites.py @@ -11,7 +11,7 @@ from azure.cli.core.azclierror import (ResourceNotFoundError, ValidationError, RequiredArgumentMissingError, InvalidArgumentValueError, UnauthorizedError) from knack.log import get_logger -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from urllib.parse import urlparse import uuid from datetime import datetime, timedelta diff --git a/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_logicapp_commands.py b/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_logicapp_commands.py index e752bae43a7..669035a12be 100644 --- a/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_logicapp_commands.py +++ b/src/azure-cli/azure/cli/command_modules/appservice/tests/latest/test_logicapp_commands.py @@ -16,7 +16,7 @@ from azure.cli.testsdk import (ScenarioTest, LocalContextScenarioTest, LiveScenarioTest, ResourceGroupPreparer, StorageAccountPreparer, JMESPathCheck, live_only) from azure.cli.testsdk.checkers import JMESPathPatternCheck -from msrestazure.tools import resource_id, parse_resource_id +from azure.cli.core.arm_tools import resource_id, parse_resource_id TEST_DIR = os.path.abspath(os.path.join(os.path.abspath(__file__), '..')) diff --git a/src/azure-cli/azure/cli/command_modules/appservice/utils.py b/src/azure-cli/azure/cli/command_modules/appservice/utils.py index 6419f305802..6fd92bdb558 100644 --- a/src/azure-cli/azure/cli/command_modules/appservice/utils.py +++ b/src/azure-cli/azure/cli/command_modules/appservice/utils.py @@ -18,7 +18,7 @@ from azure.cli.core.util import should_disable_connection_verify, send_raw_request from azure.cli.core.commands.client_factory import get_subscription_id -from msrestazure.tools import parse_resource_id, is_valid_resource_id, resource_id +from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id, resource_id from ._client_factory import web_client_factory, providers_client_factory from ._constants import LOGICAPP_KIND, FUNCTIONAPP_KIND, LINUXAPP_KIND diff --git a/src/azure-cli/azure/cli/command_modules/aro/_dynamic_validators.py b/src/azure-cli/azure/cli/command_modules/aro/_dynamic_validators.py index c67ba2e789c..30053cfc2af 100644 --- a/src/azure-cli/azure/cli/command_modules/aro/_dynamic_validators.py +++ b/src/azure-cli/azure/cli/command_modules/aro/_dynamic_validators.py @@ -19,7 +19,7 @@ RequiredArgumentMissingError from azure.core.exceptions import ResourceNotFoundError from knack.log import get_logger -from msrestazure.tools import is_valid_resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id from msrestazure.azure_exceptions import CloudError import azure.cli.command_modules.aro.custom diff --git a/src/azure-cli/azure/cli/command_modules/aro/_format.py b/src/azure-cli/azure/cli/command_modules/aro/_format.py index 0b758d15ed4..85bc6ae9011 100644 --- a/src/azure-cli/azure/cli/command_modules/aro/_format.py +++ b/src/azure-cli/azure/cli/command_modules/aro/_format.py @@ -5,7 +5,7 @@ import collections -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id def aro_list_table_format(results): diff --git a/src/azure-cli/azure/cli/command_modules/aro/_rbac.py b/src/azure-cli/azure/cli/command_modules/aro/_rbac.py index 9116c2ab942..b106fb5e3f4 100644 --- a/src/azure-cli/azure/cli/command_modules/aro/_rbac.py +++ b/src/azure-cli/azure/cli/command_modules/aro/_rbac.py @@ -11,7 +11,7 @@ from azure.cli.core.profiles import ResourceType from knack.log import get_logger from msrest.exceptions import ValidationError -from msrestazure.tools import resource_id +from azure.cli.core.arm_tools import resource_id ROLE_NETWORK_CONTRIBUTOR = '4d97b98b-1d4f-4787-a291-c67834d212e7' ROLE_READER = 'acdd72a7-3385-48ef-bd42-f606fba81ae7' diff --git a/src/azure-cli/azure/cli/command_modules/aro/_validators.py b/src/azure-cli/azure/cli/command_modules/aro/_validators.py index de187eba9e1..28003264619 100644 --- a/src/azure-cli/azure/cli/command_modules/aro/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/aro/_validators.py @@ -17,7 +17,7 @@ from azure.core.exceptions import ResourceNotFoundError from knack.log import get_logger from msrestazure.azure_exceptions import CloudError -from msrestazure.tools import is_valid_resource_id, parse_resource_id, resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id, resource_id logger = get_logger(__name__) diff --git a/src/azure-cli/azure/cli/command_modules/aro/custom.py b/src/azure-cli/azure/cli/command_modules/aro/custom.py index 08a24a95683..42a96b7abff 100644 --- a/src/azure-cli/azure/cli/command_modules/aro/custom.py +++ b/src/azure-cli/azure/cli/command_modules/aro/custom.py @@ -28,7 +28,7 @@ from knack.log import get_logger from msrestazure.azure_exceptions import CloudError -from msrestazure.tools import resource_id, parse_resource_id +from azure.cli.core.arm_tools import resource_id, parse_resource_id from msrest.exceptions import HttpOperationError from tabulate import tabulate diff --git a/src/azure-cli/azure/cli/command_modules/aro/tests/latest/custom_preparers.py b/src/azure-cli/azure/cli/command_modules/aro/tests/latest/custom_preparers.py index ac64d1210fa..da65a7ad4e1 100644 --- a/src/azure-cli/azure/cli/command_modules/aro/tests/latest/custom_preparers.py +++ b/src/azure-cli/azure/cli/command_modules/aro/tests/latest/custom_preparers.py @@ -6,7 +6,7 @@ from azure.cli.testsdk.preparers import RoleBasedServicePrincipalPreparer from azure.cli.testsdk.scenario_tests.utilities import is_text_payload from azure.cli.testsdk.utilities import GraphClientPasswordReplacer -from msrestazure.tools import resource_id +from azure.cli.core.arm_tools import resource_id MOCK_GUID = '00000000-0000-0000-0000-000000000001' MOCK_SECRET = 'fake-secret' diff --git a/src/azure-cli/azure/cli/command_modules/aro/tests/latest/test_aro_commands.py b/src/azure-cli/azure/cli/command_modules/aro/tests/latest/test_aro_commands.py index 7a8012f51d9..fea0f25f0d7 100644 --- a/src/azure-cli/azure/cli/command_modules/aro/tests/latest/test_aro_commands.py +++ b/src/azure-cli/azure/cli/command_modules/aro/tests/latest/test_aro_commands.py @@ -24,7 +24,7 @@ class AroScenarioTests(ScenarioTest): @ResourceGroupPreparer(random_name_length=28, name_prefix='clitestaro_create', location='eastus') @AROClusterServicePrincipalPreparer(name_prefix='clitestaro_create') def test_aro_create(self, resource_group): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id subscription = self.get_subscription_id() @@ -61,7 +61,7 @@ def test_aro_create(self, resource_group): @ResourceGroupPreparer(random_name_length=28, name_prefix='clitestaro_validate', location='eastus') @AROClusterServicePrincipalPreparer(name_prefix='clitestaro_validate') def test_aro_validate(self, resource_group): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id subscription = self.get_subscription_id() @@ -92,7 +92,7 @@ def test_aro_validate(self, resource_group): @ResourceGroupPreparer(random_name_length=28, name_prefix='clitestaro_listcred', location='eastus') @AROClusterServicePrincipalPreparer(name_prefix='clitestaro_listcred') def test_aro_list_credentials(self, resource_group): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id subscription = self.get_subscription_id() @@ -125,7 +125,7 @@ def test_aro_list_credentials(self, resource_group): @ResourceGroupPreparer(random_name_length=28, name_prefix='clitestaro_admin', location='eastus') @AROClusterServicePrincipalPreparer(name_prefix='clitestaro_admin') def test_aro_get_admin_kubeconfig(self, resource_group): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id subscription = self.get_subscription_id() @@ -165,7 +165,7 @@ def test_aro_get_admin_kubeconfig(self, resource_group): @ResourceGroupPreparer(random_name_length=28, name_prefix='clitestaro_show', location='eastus') @AROClusterServicePrincipalPreparer(name_prefix='clitestaro_show') def test_aro_show(self, resource_group): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id subscription = self.get_subscription_id() @@ -204,7 +204,7 @@ def test_aro_show(self, resource_group): @ResourceGroupPreparer(random_name_length=28, name_prefix='clitestaro_list', location='eastus') @AROClusterServicePrincipalPreparer(name_prefix='clitestaro_list') def test_aro_list(self, resource_group): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id subscription = self.get_subscription_id() @@ -241,7 +241,7 @@ def test_aro_list(self, resource_group): @ResourceGroupPreparer(random_name_length=28, name_prefix='clitestaro_delete', location='eastus') @AROClusterServicePrincipalPreparer(name_prefix='clitestaro_delete') def test_aro_delete(self, resource_group): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id subscription = self.get_subscription_id() @@ -274,7 +274,7 @@ def test_aro_delete(self, resource_group): @ResourceGroupPreparer(random_name_length=28, name_prefix='clitestaro_update', location='eastus') @AROClusterServicePrincipalPreparer(name_prefix='clitestaro_update') def test_aro_update(self, resource_group): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id subscription = self.get_subscription_id() diff --git a/src/azure-cli/azure/cli/command_modules/backup/custom.py b/src/azure-cli/azure/cli/command_modules/backup/custom.py index d72c49d1abe..0b33b91f308 100644 --- a/src/azure-cli/azure/cli/command_modules/backup/custom.py +++ b/src/azure-cli/azure/cli/command_modules/backup/custom.py @@ -9,7 +9,7 @@ # pylint: disable=too-many-lines from knack.log import get_logger from knack.prompting import prompt_y_n -from azure.mgmt.core.tools import is_valid_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id from azure.mgmt.recoveryservicesbackup.activestamp import RecoveryServicesBackupClient from azure.mgmt.recoveryservices import RecoveryServicesClient diff --git a/src/azure-cli/azure/cli/command_modules/backup/custom_help.py b/src/azure-cli/azure/cli/command_modules/backup/custom_help.py index 91ef79ab875..7587c4fbb11 100644 --- a/src/azure-cli/azure/cli/command_modules/backup/custom_help.py +++ b/src/azure-cli/azure/cli/command_modules/backup/custom_help.py @@ -12,7 +12,7 @@ from knack.log import get_logger -from azure.mgmt.core.tools import parse_resource_id, is_valid_resource_id +from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id from azure.mgmt.recoveryservicesbackup.activestamp.models import OperationStatusValues, JobStatus from azure.mgmt.recoveryservicesbackup.passivestamp.models import CrrJobRequest diff --git a/src/azure-cli/azure/cli/command_modules/batch/_validators.py b/src/azure-cli/azure/cli/command_modules/batch/_validators.py index 05137c6fe7a..9729a3a5eaa 100644 --- a/src/azure-cli/azure/cli/command_modules/batch/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/batch/_validators.py @@ -332,7 +332,7 @@ def validate_client_parameters(cmd, namespace): acc = next((x for x in client.batch_account.list() if x.name == namespace.account_name and x.account_endpoint == host), None) if acc: - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id rg = parse_resource_id(acc.id)['resource_group'] namespace.account_key = \ client.batch_account.get_keys(rg, # pylint: disable=no-member diff --git a/src/azure-cli/azure/cli/command_modules/batchai/_format.py b/src/azure-cli/azure/cli/command_modules/batchai/_format.py index 18037354ae9..6b7ee5e35bc 100644 --- a/src/azure-cli/azure/cli/command_modules/batchai/_format.py +++ b/src/azure-cli/azure/cli/command_modules/batchai/_format.py @@ -34,7 +34,7 @@ def cluster_list_table_format(result): def cluster_show_table_format(result): """Format cluster as a table.""" - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id row = OrderedDict() row['Name'] = result['name'] row['Resource Group'] = result['resourceGroup'] @@ -62,7 +62,7 @@ def experiment_list_table_format(result): def experiment_show_table_format(experiment): """Format the experiment as a table""" - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id row = OrderedDict() row['Name'] = experiment['name'] row['Resource Group'] = experiment['resourceGroup'] @@ -81,7 +81,7 @@ def job_list_table_format(result): def job_show_table_format(job): """Format job as a table.""" - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id row = OrderedDict() row['Name'] = job['name'] cluster = parse_resource_id(job['cluster']['id']) diff --git a/src/azure-cli/azure/cli/command_modules/batchai/custom.py b/src/azure-cli/azure/cli/command_modules/batchai/custom.py index f17a2e3e3f2..f3e8c59aa74 100644 --- a/src/azure-cli/azure/cli/command_modules/batchai/custom.py +++ b/src/azure-cli/azure/cli/command_modules/batchai/custom.py @@ -24,7 +24,7 @@ from knack.util import CLIError from msrest.serialization import Deserializer from msrestazure.azure_exceptions import CloudError -from msrestazure.tools import is_valid_resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id from urllib.parse import urlparse from azure.cli.core import keys diff --git a/src/azure-cli/azure/cli/command_modules/cdn/custom/custom.py b/src/azure-cli/azure/cli/command_modules/cdn/custom/custom.py index 7575cc051fa..519649d35f6 100644 --- a/src/azure-cli/azure/cli/command_modules/cdn/custom/custom.py +++ b/src/azure-cli/azure/cli/command_modules/cdn/custom/custom.py @@ -53,7 +53,7 @@ from knack.log import get_logger from msrest.polling import LROPoller, NoPolling -from msrestazure.tools import is_valid_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id logger = get_logger(__name__) diff --git a/src/azure-cli/azure/cli/command_modules/cdn/custom/custom_rule_util.py b/src/azure-cli/azure/cli/command_modules/cdn/custom/custom_rule_util.py index b3add0c508a..31a1551a43e 100644 --- a/src/azure-cli/azure/cli/command_modules/cdn/custom/custom_rule_util.py +++ b/src/azure-cli/azure/cli/command_modules/cdn/custom/custom_rule_util.py @@ -6,7 +6,7 @@ from azure.cli.core.aaz._base import has_value from azure.mgmt.cdn.models import (RequestMethodOperator, RuleIsCompressionEnabled) -from msrestazure.tools import is_valid_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id def create_condition(match_variable, diff --git a/src/azure-cli/azure/cli/command_modules/cognitiveservices/_params.py b/src/azure-cli/azure/cli/command_modules/cognitiveservices/_params.py index 7f245d19dcd..c7cec7b5f62 100644 --- a/src/azure-cli/azure/cli/command_modules/cognitiveservices/_params.py +++ b/src/azure-cli/azure/cli/command_modules/cognitiveservices/_params.py @@ -101,7 +101,7 @@ def _filter_sku(_sku): def _validate_subnet(cmd, namespace): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id subnet = namespace.subnet diff --git a/src/azure-cli/azure/cli/command_modules/cognitiveservices/custom.py b/src/azure-cli/azure/cli/command_modules/cognitiveservices/custom.py index 9b3d9ba028c..40e588e7f41 100644 --- a/src/azure-cli/azure/cli/command_modules/cognitiveservices/custom.py +++ b/src/azure-cli/azure/cli/command_modules/cognitiveservices/custom.py @@ -174,7 +174,7 @@ def add_network_rule(client, resource_group_name, account_name, subnet=None, rules = default_network_acls() if subnet: - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(subnet): raise CLIError("Expected fully qualified resource ID: got '{}'".format(subnet)) diff --git a/src/azure-cli/azure/cli/command_modules/container/_validators.py b/src/azure-cli/azure/cli/command_modules/container/_validators.py index fceb5c2de9a..6d20ebcab91 100644 --- a/src/azure-cli/azure/cli/command_modules/container/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/container/_validators.py @@ -69,7 +69,7 @@ def validate_msi(namespace): def validate_subnet(ns): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id # vnet_name is depricated, using for backwards compatability if ns.vnet_name and not ns.vnet: diff --git a/src/azure-cli/azure/cli/command_modules/container/custom.py b/src/azure-cli/azure/cli/command_modules/container/custom.py index 0cd37a94b39..099f92a2bcf 100644 --- a/src/azure-cli/azure/cli/command_modules/container/custom.py +++ b/src/azure-cli/azure/cli/command_modules/container/custom.py @@ -294,7 +294,7 @@ def _build_identities_info(identities): def _get_subnet_id(cmd, location, resource_group_name, vnet, vnet_address_prefix, subnet, subnet_address_prefix): - from msrestazure.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id from azure.cli.core.commands import LongRunningOperation from azure.core.exceptions import HttpResponseError from .aaz.latest.network.vnet import Create as VNetCreate, Show as VNetShow @@ -387,7 +387,7 @@ def _get_subnet_id(cmd, location, resource_group_name, vnet, vnet_address_prefix def _get_diagnostics_from_workspace(cli_ctx, log_analytics_workspace): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id log_analytics_workspace_client = cf_log_analytics_workspace(cli_ctx) log_analytics_workspace_shared_keys_client = cf_log_analytics_workspace_shared_keys(cli_ctx) @@ -481,7 +481,7 @@ def _create_resource_requirements(cpu, memory): def _create_image_registry_credentials(cmd, resource_group_name, registry_login_server, registry_username, registry_password, image, identity): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id image_registry_credentials = None if identity: diff --git a/src/azure-cli/azure/cli/command_modules/container/tests/latest/test_container_commands.py b/src/azure-cli/azure/cli/command_modules/container/tests/latest/test_container_commands.py index 90494c3bbbe..393f1121a66 100644 --- a/src/azure-cli/azure/cli/command_modules/container/tests/latest/test_container_commands.py +++ b/src/azure-cli/azure/cli/command_modules/container/tests/latest/test_container_commands.py @@ -449,7 +449,7 @@ def test_container_create_with_acr(self, resource_group, resource_group_location # Test create container with VNET argument validations. @ResourceGroupPreparer() def test_container_create_with_vnet(self, resource_group, resource_group_location): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id from azure.core.exceptions import HttpResponseError from knack.util import CLIError diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/_up_utils.py b/src/azure-cli/azure/cli/command_modules/containerapp/_up_utils.py index 16c65d29656..1036b0d0161 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/_up_utils.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/_up_utils.py @@ -26,7 +26,7 @@ from azure.mgmt.containerregistry import ContainerRegistryManagementClient from knack.log import get_logger -from msrestazure.tools import parse_resource_id, is_valid_resource_id, resource_id +from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id, resource_id from ._clients import ManagedEnvironmentClient, ContainerAppClient, GitHubActionClient, ContainerAppsJobClient diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/_utils.py b/src/azure-cli/azure/cli/command_modules/containerapp/_utils.py index dc84bf3a4c2..219de2008c5 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/_utils.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/_utils.py @@ -39,7 +39,7 @@ from azure.mgmt.servicelinker import ServiceLinkerManagementClient from knack.log import get_logger -from msrestazure.tools import parse_resource_id, is_valid_resource_id, resource_id +from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id, resource_id from ._clients import ContainerAppClient, ManagedEnvironmentClient, WorkloadProfileClient, ContainerAppsJobClient from ._client_factory import handle_raw_exception, providers_client_factory, cf_resource_groups, log_analytics_client_factory, log_analytics_shared_key_client_factory diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/_validators.py b/src/azure-cli/azure/cli/command_modules/containerapp/_validators.py index 5cd3cc481b2..72f24529b33 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/_validators.py @@ -7,7 +7,7 @@ import re from azure.cli.core.azclierror import (ValidationError, ResourceNotFoundError, InvalidArgumentValueError, MutuallyExclusiveArgumentError) -from msrestazure.tools import is_valid_resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id from knack.log import get_logger from ._clients import ContainerAppClient, ManagedEnvironmentClient @@ -75,7 +75,7 @@ def validate_cpu(namespace): def validate_managed_env_name_or_id(cmd, namespace): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id if namespace.managed_env: if not is_valid_resource_id(namespace.managed_env): @@ -90,7 +90,7 @@ def validate_managed_env_name_or_id(cmd, namespace): def validate_storage_name_or_id(cmd, namespace): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id if namespace.storage_account: if not is_valid_resource_id(namespace.storage_account): diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/commands.py b/src/azure-cli/azure/cli/command_modules/containerapp/commands.py index 6793aabc883..c8d5dddc1b0 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/commands.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/commands.py @@ -5,7 +5,7 @@ # pylint: disable=line-too-long, too-many-statements, bare-except # from azure.cli.core.commands import CliCommandType -# from msrestazure.tools import is_valid_resource_id, parse_resource_id +# from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id from azure.cli.command_modules.containerapp._client_factory import ex_handler_factory from ._validators import validate_ssh from ._transformers import (transform_containerapp_output, diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_decorator.py b/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_decorator.py index cbcdb55d440..74d884a937c 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_decorator.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_decorator.py @@ -18,7 +18,7 @@ from knack.log import get_logger from knack.util import CLIError -from msrestazure.tools import parse_resource_id, is_valid_resource_id +from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id from msrest.exceptions import DeserializationError from .base_resource import BaseResource diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_env_decorator.py b/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_env_decorator.py index 0b1b7b7eda3..9cf6c38fe12 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_env_decorator.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_env_decorator.py @@ -11,7 +11,7 @@ from azure.cli.core.azclierror import RequiredArgumentMissingError, ValidationError from azure.cli.core.commands import AzCliCommand from knack.util import CLIError -from msrestazure.tools import is_valid_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id from ._constants import CONTAINER_APPS_RP from ._utils import (get_vnet_location, diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_job_decorator.py b/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_job_decorator.py index b975853b85a..3e7f8192510 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_job_decorator.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/containerapp_job_decorator.py @@ -21,7 +21,7 @@ from knack.log import get_logger -from msrestazure.tools import parse_resource_id, is_valid_resource_id +from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id from msrest.exceptions import DeserializationError from ._decorator_utils import process_loaded_yaml, load_yaml_file, create_deserializer diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/custom.py b/src/azure-cli/azure/cli/command_modules/containerapp/custom.py index 9709cf3256d..a35c06f3889 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/custom.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/custom.py @@ -26,7 +26,7 @@ from knack.log import get_logger from knack.prompting import prompt_y_n, prompt as prompt_str -from msrestazure.tools import parse_resource_id, is_valid_resource_id +from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id from msrest.exceptions import DeserializationError from .containerapp_job_decorator import ContainerAppJobDecorator, ContainerAppJobCreateDecorator diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_commands.py b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_commands.py index 5123a8cb89e..8b7d70205be 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_commands.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_commands.py @@ -10,7 +10,7 @@ from azure.cli.core.azclierror import ValidationError from azure.cli.testsdk.scenario_tests import AllowLargeResponse, live_only from azure.cli.testsdk import (ScenarioTest, ResourceGroupPreparer, JMESPathCheck, LogAnalyticsWorkspacePreparer) -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from azure.cli.command_modules.containerapp.tests.latest.common import (write_test_file, clean_up_test_file) from .common import TEST_LOCATION diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_ingress_sticky_session.py b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_ingress_sticky_session.py index c37e14cf605..cbff937b4bb 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_ingress_sticky_session.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_ingress_sticky_session.py @@ -5,7 +5,7 @@ import os -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from azure.cli.testsdk.scenario_tests import AllowLargeResponse from azure.cli.testsdk import (ScenarioTest, ResourceGroupPreparer, JMESPathCheck, live_only) @@ -45,4 +45,4 @@ def test_containerapp_ingress_sticky_sessions_e2e(self, resource_group): ]) self.cmd('containerapp show -g {} -n {}'.format(resource_group, app), checks=[ JMESPathCheck('properties.configuration.ingress.stickySessions.affinity', "sticky"), - ]) \ No newline at end of file + ]) diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_scenario.py b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_scenario.py index f2a680ad4a3..47071c991d1 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_scenario.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerapp_scenario.py @@ -9,7 +9,7 @@ import time import unittest -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from azure.cli.command_modules.containerapp.custom import containerapp_ssh from azure.cli.command_modules.containerapp.tests.latest.utils import create_containerapp_env, \ diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_crud.py b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_crud.py index bd5915e9fa0..1723b13de4f 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_crud.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_crud.py @@ -5,7 +5,7 @@ import os -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from azure.cli.testsdk.scenario_tests import AllowLargeResponse from azure.cli.testsdk import (ScenarioTest, ResourceGroupPreparer, JMESPathCheck, LogAnalyticsWorkspacePreparer) @@ -341,4 +341,4 @@ def test_containerappjob_create_with_environment_id(self, resource_group, lawork self.cmd(f'containerapp job list -g {resource_group}', checks=[ JMESPathCheck("length(@)", 2), ]) - clean_up_test_file(containerappjob_file_name) \ No newline at end of file + clean_up_test_file(containerappjob_file_name) diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_event_triggered_crud.py b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_event_triggered_crud.py index 12bea33d055..ea1f9bc8cbc 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_event_triggered_crud.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_event_triggered_crud.py @@ -6,7 +6,7 @@ import os import time -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from azure.cli.testsdk.scenario_tests import AllowLargeResponse from azure.cli.testsdk import (ScenarioTest, ResourceGroupPreparer, JMESPathCheck) diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_executions.py b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_executions.py index e8d1dcc2e3b..a0a4958ded2 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_executions.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_executions.py @@ -6,7 +6,7 @@ import os import time -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from azure.cli.testsdk.scenario_tests import AllowLargeResponse from azure.cli.testsdk import (ScenarioTest, ResourceGroupPreparer, JMESPathCheck, LogAnalyticsWorkspacePreparer) @@ -661,4 +661,4 @@ def test_containerappjob_eventtriggered_create_with_yaml(self, resource_group, l JMESPathCheck('properties.configuration.eventTriggerConfig.scale.rules[0].auth[0].secretRef', "personal-access-token"), ]) - clean_up_test_file(containerappjob_file_name) \ No newline at end of file + clean_up_test_file(containerappjob_file_name) diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_registry.py b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_registry.py index 529306dc60e..5c9bc25dd2a 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_registry.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_registry.py @@ -5,7 +5,7 @@ import os -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from azure.cli.testsdk.scenario_tests import AllowLargeResponse from azure.cli.testsdk import (ScenarioTest, ResourceGroupPreparer, JMESPathCheck, JMESPathCheckExists, diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_with_identity.py b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_with_identity.py index 2ccf58777f8..968000c9dcb 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_with_identity.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_with_identity.py @@ -5,7 +5,7 @@ import os -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from azure.cli.testsdk.scenario_tests import AllowLargeResponse from azure.cli.testsdk import (ScenarioTest, ResourceGroupPreparer, JMESPathCheck, JMESPathCheckExists, @@ -99,4 +99,4 @@ def test_containerapp_manualjob_withidentity_crudoperations_e2e(self, resource_g # check container app job resource does not have any identity self.cmd("az containerapp job show --resource-group {} --name {}".format(resource_group, job), checks=[ JMESPathCheck('identity.type', "None", case_sensitive=False) - ]) \ No newline at end of file + ]) diff --git a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_with_secrets.py b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_with_secrets.py index af2fae0010b..32d0f577f40 100644 --- a/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_with_secrets.py +++ b/src/azure-cli/azure/cli/command_modules/containerapp/tests/latest/test_containerappjob_with_secrets.py @@ -6,7 +6,7 @@ import os import time -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from azure.cli.testsdk.scenario_tests import AllowLargeResponse from azure.cli.testsdk import (ScenarioTest, ResourceGroupPreparer, JMESPathCheck, LogAnalyticsWorkspacePreparer) diff --git a/src/azure-cli/azure/cli/command_modules/cosmosdb/custom.py b/src/azure-cli/azure/cli/command_modules/cosmosdb/custom.py index ab2d4a10e8f..2315cb1b67c 100644 --- a/src/azure-cli/azure/cli/command_modules/cosmosdb/custom.py +++ b/src/azure-cli/azure/cli/command_modules/cosmosdb/custom.py @@ -430,7 +430,7 @@ def cli_cosmosdb_update(client, update_consistency_policy = True if network_acl_bypass_resource_ids is not None: - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id from azure.cli.core.azclierror import InvalidArgumentValueError for resource_id in network_acl_bypass_resource_ids: if not is_valid_resource_id(resource_id): @@ -1668,7 +1668,7 @@ def cli_cosmosdb_identity_remove(client, def _get_virtual_network_id(cmd, resource_group_name, subnet, virtual_network): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if not is_valid_resource_id(subnet): if virtual_network is None: raise CLIError("usage error: --subnet ID | --subnet NAME --vnet-name NAME") diff --git a/src/azure-cli/azure/cli/command_modules/dla/_validators.py b/src/azure-cli/azure/cli/command_modules/dla/_validators.py index 866c4d8c7d7..21b9b57ef24 100644 --- a/src/azure-cli/azure/cli/command_modules/dla/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/dla/_validators.py @@ -16,7 +16,7 @@ def _get_resource_group_from_account_name(client, account_name): :return: resource group name or None :rtype: str """ - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id for acct in client.list(): id_comps = parse_resource_id(acct.id) if id_comps['name'] == account_name: diff --git a/src/azure-cli/azure/cli/command_modules/dls/_validators.py b/src/azure-cli/azure/cli/command_modules/dls/_validators.py index f4a561a837a..fe9b9c7decb 100644 --- a/src/azure-cli/azure/cli/command_modules/dls/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/dls/_validators.py @@ -17,7 +17,7 @@ def _get_resource_group_from_account_name(client, account_name): :return: resource group name or None :rtype: str """ - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id for acct in client.list(): id_comps = parse_resource_id(acct.id) if id_comps['name'] == account_name: @@ -42,7 +42,7 @@ def validate_resource_group_name(cmd, ns): # Validates if a subnet id or name have been given by the user. If subnet id is given, vnet-name should not be provided. def validate_subnet(cmd, namespace): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id subnet = namespace.subnet diff --git a/src/azure-cli/azure/cli/command_modules/eventgrid/custom.py b/src/azure-cli/azure/cli/command_modules/eventgrid/custom.py index d528310c747..7d330f25f9b 100644 --- a/src/azure-cli/azure/cli/command_modules/eventgrid/custom.py +++ b/src/azure-cli/azure/cli/command_modules/eventgrid/custom.py @@ -8,7 +8,7 @@ import re from knack.log import get_logger from knack.util import CLIError -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from dateutil.parser import parse # pylint: disable=import-error,relative-import from azure.cli.core.azclierror import MutuallyExclusiveArgumentError diff --git a/src/azure-cli/azure/cli/command_modules/eventhubs/_validator.py b/src/azure-cli/azure/cli/command_modules/eventhubs/_validator.py index 62e4d40fa9f..ae028c64025 100644 --- a/src/azure-cli/azure/cli/command_modules/eventhubs/_validator.py +++ b/src/azure-cli/azure/cli/command_modules/eventhubs/_validator.py @@ -11,7 +11,7 @@ def validate_storageaccount(cmd, namespace): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.storage_account: if not is_valid_resource_id(namespace.storage_account): namespace.storage_account = resource_id( @@ -24,7 +24,7 @@ def validate_storageaccount(cmd, namespace): def validate_partner_namespace(cmd, namespace): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.partner_namespace: if not is_valid_resource_id(namespace.partner_namespace): namespace.partner_namespace = resource_id( diff --git a/src/azure-cli/azure/cli/command_modules/hdinsight/_completers.py b/src/azure-cli/azure/cli/command_modules/hdinsight/_completers.py index 493d53a0c23..7a2704ea183 100644 --- a/src/azure-cli/azure/cli/command_modules/hdinsight/_completers.py +++ b/src/azure-cli/azure/cli/command_modules/hdinsight/_completers.py @@ -18,7 +18,7 @@ def subnet_completion_list(cmd, prefix, namespace, **kwargs): # pylint: disable=unused-argument def worker(cmd, prefix, namespace): # pylint: disable=unused-argument - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id from .aaz.latest.network.vnet.subnet import List subnets = [] diff --git a/src/azure-cli/azure/cli/command_modules/hdinsight/_validators.py b/src/azure-cli/azure/cli/command_modules/hdinsight/_validators.py index 60fe2587a16..ae8a0c87f94 100644 --- a/src/azure-cli/azure/cli/command_modules/hdinsight/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/hdinsight/_validators.py @@ -5,7 +5,7 @@ import threading from knack.util import CLIError -from msrestazure.tools import is_valid_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id from azure.cli.core.commands.parameters import get_resources_in_subscription from .util import get_resource_id_by_name diff --git a/src/azure-cli/azure/cli/command_modules/hdinsight/custom.py b/src/azure-cli/azure/cli/command_modules/hdinsight/custom.py index 6295dc5f7c0..fc61c727800 100644 --- a/src/azure-cli/azure/cli/command_modules/hdinsight/custom.py +++ b/src/azure-cli/azure/cli/command_modules/hdinsight/custom.py @@ -548,7 +548,7 @@ def create_hdi_application(cmd, client, resource_group_name, cluster_name, appli def enable_hdi_monitoring(cmd, client, resource_group_name, cluster_name, workspace, primary_key=None, workspace_type='resource_id', no_validation_timeout=False): from azure.mgmt.hdinsight.models import ClusterMonitoringRequest - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id from ._client_factory import cf_log_analytics if workspace_type != 'resource_id' and not primary_key: @@ -590,7 +590,7 @@ def enable_hdi_monitoring(cmd, client, resource_group_name, cluster_name, worksp def enable_hdi_azure_monitor(cmd, client, resource_group_name, cluster_name, workspace, primary_key=None, workspace_type='resource_id', no_validation_timeout=False): from azure.mgmt.hdinsight.models import AzureMonitorRequest - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id from ._client_factory import cf_log_analytics if workspace_type != 'resource_id' and not primary_key: @@ -633,7 +633,7 @@ def enable_hdi_azure_monitor(cmd, client, resource_group_name, cluster_name, wor def enable_hdi_azure_monitor_agent(cmd, client, resource_group_name, cluster_name, workspace, primary_key=None, workspace_type='resource_id', no_validation_timeout=False): from azure.mgmt.hdinsight.models import AzureMonitorRequest - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id from ._client_factory import cf_log_analytics if workspace_type != 'resource_id' and not primary_key: diff --git a/src/azure-cli/azure/cli/command_modules/hdinsight/util.py b/src/azure-cli/azure/cli/command_modules/hdinsight/util.py index f138a624a81..f0209c2ff87 100644 --- a/src/azure-cli/azure/cli/command_modules/hdinsight/util.py +++ b/src/azure-cli/azure/cli/command_modules/hdinsight/util.py @@ -125,7 +125,7 @@ class NodeRoleType: # pylint: disable=too-few-public-methods def get_key_for_storage_account(cmd, storage_account): # pylint: disable=unused-argument from ._client_factory import cf_storage - from msrestazure.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id from knack.util import CLIError storage_account_key = None @@ -144,7 +144,7 @@ def get_key_for_storage_account(cmd, storage_account): # pylint: disable=unused def get_storage_account_endpoint(cmd, storage_account, is_wasb): from ._client_factory import cf_storage - from msrestazure.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id host = None if is_valid_resource_id(storage_account): parsed_storage_account = parse_resource_id(storage_account) @@ -189,7 +189,7 @@ def build_update_identities_info(assign_identity_type, identities): def build_virtual_network_profile(subnet): - from msrestazure.tools import resource_id, parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, parse_resource_id, is_valid_resource_id from azure.mgmt.hdinsight.models import VirtualNetworkProfile from knack.util import CLIError @@ -214,7 +214,7 @@ def build_virtual_network_profile(subnet): def parse_domain_name(domain): - from msrestazure.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id domain_name = None if is_valid_resource_id(domain): parsed_domain_id = parse_resource_id(domain) diff --git a/src/azure-cli/azure/cli/command_modules/keyvault/_validators.py b/src/azure-cli/azure/cli/command_modules/keyvault/_validators.py index 095876b1c04..1ff2d6273fe 100644 --- a/src/azure-cli/azure/cli/command_modules/keyvault/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/keyvault/_validators.py @@ -45,7 +45,7 @@ def _get_resource_group_from_resource_name(cli_ctx, vault_name, hsm_name=None): :return: resource group name or None :rtype: str """ - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id if vault_name: client = get_mgmt_service_client(cli_ctx, ResourceType.MGMT_KEYVAULT).vaults @@ -383,7 +383,7 @@ def validate_deleted_vault_or_hsm_name(cmd, ns): """ Validate a deleted vault name; populate or validate location and resource_group_name """ - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id vault_name = getattr(ns, 'vault_name', None) hsm_name = getattr(ns, 'hsm_name', None) @@ -502,7 +502,7 @@ def get_hsm_base_url_type(cli_ctx): def _construct_vnet(cmd, resource_group_name, vnet_name, subnet_name): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id from azure.cli.core.commands.client_factory import get_subscription_id return resource_id( @@ -516,7 +516,7 @@ def _construct_vnet(cmd, resource_group_name, vnet_name, subnet_name): def validate_subnet(cmd, namespace): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id subnet = namespace.subnet subnet_is_id = is_valid_resource_id(subnet) diff --git a/src/azure-cli/azure/cli/command_modules/keyvault/custom.py b/src/azure-cli/azure/cli/command_modules/keyvault/custom.py index 2f9ea33c8b2..b8845de5553 100644 --- a/src/azure-cli/azure/cli/command_modules/keyvault/custom.py +++ b/src/azure-cli/azure/cli/command_modules/keyvault/custom.py @@ -423,7 +423,7 @@ def _parse_network_acls(cmd, resource_group_name, network_acls_json, network_acl network_acls = _create_network_rule_set(cmd, bypass, default_action) - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id network_acls.virtual_network_rules = [] for vnet_rule in network_acls_json.get('vnet', []): diff --git a/src/azure-cli/azure/cli/command_modules/lab/custom.py b/src/azure-cli/azure/cli/command_modules/lab/custom.py index 41e0c45807f..c49b60fdc32 100644 --- a/src/azure-cli/azure/cli/command_modules/lab/custom.py +++ b/src/azure-cli/azure/cli/command_modules/lab/custom.py @@ -487,7 +487,7 @@ def _build_arguments_schema(cls, *args, **kwargs): def pre_operations(self): import json - from azure.mgmt.core.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.azclierror import RequiredArgumentMissingError from azure.cli.core.commands.client_factory import get_subscription_id args = self.ctx.args diff --git a/src/azure-cli/azure/cli/command_modules/lab/tests/latest/test_lab_validators.py b/src/azure-cli/azure/cli/command_modules/lab/tests/latest/test_lab_validators.py index b624a177420..15ecc603771 100644 --- a/src/azure-cli/azure/cli/command_modules/lab/tests/latest/test_lab_validators.py +++ b/src/azure-cli/azure/cli/command_modules/lab/tests/latest/test_lab_validators.py @@ -4,7 +4,7 @@ # -------------------------------------------------------------------------------------------- import unittest -from azure.mgmt.core.tools import is_valid_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id from azure.cli.core.azclierror import ArgumentUsageError from azure.cli.command_modules.lab.validators import _update_artifacts diff --git a/src/azure-cli/azure/cli/command_modules/lab/validators.py b/src/azure-cli/azure/cli/command_modules/lab/validators.py index fad26b17322..66c78d71898 100644 --- a/src/azure-cli/azure/cli/command_modules/lab/validators.py +++ b/src/azure-cli/azure/cli/command_modules/lab/validators.py @@ -36,7 +36,7 @@ def validate_lab_vm_create(cmd, args): def validate_lab_vm_list(cmd, args): """ Validates parameters for lab vm list and updates args. """ - from azure.mgmt.core.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id filters = has_value(args.filters) or False environment = has_value(args.environment) or False args_all = has_value(args.all) or False @@ -275,7 +275,7 @@ def _use_gallery_image(cli_ctx, args): # pylint: disable=no-member def _use_custom_image(cli_ctx, args): """ Retrieve custom image from lab and update args """ - from azure.mgmt.core.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if is_valid_resource_id(args.image.to_serialized_data()): args.custom_image_id = args.image else: @@ -345,7 +345,7 @@ def _validate_other_parameters(args, formula=None): def validate_artifacts(cmd, args): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id if has_value(args.artifacts_org): from azure.cli.core.commands.client_factory import get_subscription_id resource_group = args.resource_group.to_serialized_data() @@ -384,7 +384,7 @@ def _update_artifacts(artifacts, lab_resource_id): def _update_artifact_id(artifact_id, lab_resource_id): - from azure.mgmt.core.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(artifact_id): return "{}{}".format(lab_resource_id, artifact_id) return artifact_id diff --git a/src/azure-cli/azure/cli/command_modules/managedservices/custom.py b/src/azure-cli/azure/cli/command_modules/managedservices/custom.py index c7aba8e0b95..9a107401fa2 100644 --- a/src/azure-cli/azure/cli/command_modules/managedservices/custom.py +++ b/src/azure-cli/azure/cli/command_modules/managedservices/custom.py @@ -4,7 +4,7 @@ # -------------------------------------------------------------------------------------------- import uuid from knack.log import get_logger -from azure.mgmt.core.tools import parse_resource_id, is_valid_resource_id +from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id from azure.cli.core.aaz import has_value from .aaz.latest.managedservices.definition import ( Create as _DefinitionCreate, Delete as _DefinitionDelete, List as _DefinitionList, Show as _DefinitionShow) diff --git a/src/azure-cli/azure/cli/command_modules/monitor/operations/activity_log_alerts.py b/src/azure-cli/azure/cli/command_modules/monitor/operations/activity_log_alerts.py index 8e38a6530d7..eab90807d68 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/operations/activity_log_alerts.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/operations/activity_log_alerts.py @@ -152,7 +152,7 @@ def pre_operations(self): process_condition_parameter_for_alert(args) webhook_properties = process_webhook_properties(args) if not has_value(args.scope_ui): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id from azure.cli.core.commands.client_factory import get_subscription_id # args.scopes = [resource_id(subscription=get_subscription_id(self.cli_ctx), # resource_group=args.resource_group)] @@ -471,7 +471,7 @@ def pre_instance_update(self, instance): def _normalize_names(cli_ctx, resource_names, resource_group, namespace, resource_type): """Normalize a group of resource names. Returns a set of resource ids. Throws if any of the name can't be correctly converted to a resource id.""" - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from azure.cli.core.commands.client_factory import get_subscription_id rids = set() diff --git a/src/azure-cli/azure/cli/command_modules/monitor/operations/autoscale_settings.py b/src/azure-cli/azure/cli/command_modules/monitor/operations/autoscale_settings.py index 5410e338dc1..c577f7863d5 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/operations/autoscale_settings.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/operations/autoscale_settings.py @@ -259,7 +259,7 @@ def autoscale_create(cmd, resource, count, autoscale_name=None, resource_group_n scale_mode=None, scale_look_ahead_time=None): if not autoscale_name: - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id autoscale_name = parse_resource_id(resource)['name'] min_count = min_count or count max_count = max_count or count @@ -545,7 +545,7 @@ def get_condition_from_model(condition): def autoscale_rule_create(cmd, autoscale_name, resource_group_name, condition, scale, profile_name=DEFAULT_PROFILE_NAME, cooldown=5, source=None, timegrain="avg 1m"): - from azure.mgmt.core.tools import parse_resource_id, resource_id + from azure.cli.core.arm_tools import parse_resource_id, resource_id autoscale_settings = get_autoscale_instance(cmd, resource_group_name, autoscale_name) profile = _identify_profile_cg(autoscale_settings["profiles"], profile_name) condition.metric_resource_uri = source or autoscale_settings["target_resource_uri"] diff --git a/src/azure-cli/azure/cli/command_modules/monitor/operations/diagnostics_settings.py b/src/azure-cli/azure/cli/command_modules/monitor/operations/diagnostics_settings.py index 242ea96146f..88f4d649a7d 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/operations/diagnostics_settings.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/operations/diagnostics_settings.py @@ -36,8 +36,8 @@ def create_resource_parameters(arg_schema, arg_group=None): def update_resource_parameters(ctx, alias="resource"): args = ctx.args - from msrestazure.tools import is_valid_resource_id - from azure.mgmt.core.tools import parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id from azure.cli.core.aaz import has_value name_or_id = args.resource.to_serialized_data() usage_error = CLIError('usage error: --{0} ID | --{0} NAME --resource-group NAME ' @@ -91,7 +91,7 @@ def _build_arguments_schema(cls, *args, **kwargs): def pre_operations(self): ctx = self.ctx from azure.cli.core.aaz import has_value - from msrestazure.tools import is_valid_resource_id, resource_id, parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id, parse_resource_id update_resource_parameters(ctx) args = ctx.args rg = args.resource_group_name.to_serialized_data() diff --git a/src/azure-cli/azure/cli/command_modules/monitor/operations/log_analytics_workspace.py b/src/azure-cli/azure/cli/command_modules/monitor/operations/log_analytics_workspace.py index c08313dd429..67977537d70 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/operations/log_analytics_workspace.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/operations/log_analytics_workspace.py @@ -112,7 +112,7 @@ class WorkspaceDataExportCreate(_WorkspaceDataExportCreate): def pre_operations(self): args = self.ctx.args destination = str(args.destination) - from azure.mgmt.core.tools import is_valid_resource_id, resource_id, parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id, parse_resource_id if not is_valid_resource_id(destination): raise InvalidArgumentValueError('usage error: --destination should be a storage account,' ' an evenhug namespace or an event hub resource id.') @@ -140,7 +140,7 @@ def pre_operations(self): args = self.ctx.args if args.destination: destination = str(args.destination) - from azure.mgmt.core.tools import is_valid_resource_id, resource_id, parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id, parse_resource_id if not is_valid_resource_id(destination): raise InvalidArgumentValueError('usage error: --destination should be a storage account,' ' an evenhug namespace or an event hub resource id.') diff --git a/src/azure-cli/azure/cli/command_modules/monitor/operations/metric_alert.py b/src/azure-cli/azure/cli/command_modules/monitor/operations/metric_alert.py index e373f451d1d..d261b53e82c 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/operations/metric_alert.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/operations/metric_alert.py @@ -12,7 +12,7 @@ from azure.cli.core.azclierror import InvalidArgumentValueError from knack.log import get_logger from msrest.serialization import Serializer -from msrestazure.tools import is_valid_resource_id, resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from ..aaz.latest.monitor.metrics.alert import Update as _MetricsAlertUpdate @@ -353,7 +353,7 @@ def _parse_action_removals(actions): def _parse_resource_and_scope_type(scopes): - from azure.mgmt.core.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id if not scopes: raise InvalidArgumentValueError('scopes cannot be null.') diff --git a/src/azure-cli/azure/cli/command_modules/monitor/operations/monitor_clone_util.py b/src/azure-cli/azure/cli/command_modules/monitor/operations/monitor_clone_util.py index 8dabc61a6a4..3f766e5dcb1 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/operations/monitor_clone_util.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/operations/monitor_clone_util.py @@ -3,7 +3,7 @@ # Licensed under the MIT License. See License.txt in the project root for license information. # -------------------------------------------------------------------------------------------- # pylint: disable=line-too-long, protected-access -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from knack.log import get_logger from knack.util import CLIError from azure.cli.core.commands.transform import _parse_id diff --git a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_general_operations.py b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_general_operations.py index 98a8831444f..4ba19259da5 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_general_operations.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_general_operations.py @@ -8,7 +8,7 @@ from azure.cli.testsdk.scenario_tests import AllowLargeResponse from unittest import mock import unittest -from msrestazure.tools import resource_id +from azure.cli.core.arm_tools import resource_id class MonitorCloneVMScenarios(ScenarioTest): diff --git a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_log_analytics_workspace.py b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_log_analytics_workspace.py index 1cf90c8289f..381dbeb53c8 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_log_analytics_workspace.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_log_analytics_workspace.py @@ -148,7 +148,7 @@ def test_monitor_log_analytics_workspace_linked_service_common_scenario(self): location='eastus') def test_monitor_log_analytics_workspace_linked_storage(self, resource_group, account_1, account_2, account_3, account_4): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'name': self.create_random_name('clitest', 20), 'name_2': self.create_random_name('clitest', 20), @@ -407,7 +407,7 @@ def test_monitor_log_analytics_workspace_saved_search(self, resource_group): @StorageAccountPreparer(name_prefix='saws1', kind='StorageV2', sku='Standard_LRS', parameter_name='account_1', location='eastus') def test_monitor_log_analytics_workspace_data_export(self, resource_group, account_1): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'workspace_name': self.create_random_name('clitest', 20), 'data_export_name': 'clitest', diff --git a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metric_alert_scenarios.py b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metric_alert_scenarios.py index 9775579ae66..edb32f136c0 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metric_alert_scenarios.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metric_alert_scenarios.py @@ -16,7 +16,7 @@ class MonitorTests(ScenarioTest): @StorageAccountPreparer() def test_metric_alert_v2_scenario(self, resource_group, storage_account): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'alert': 'alert1', 'sa': storage_account, @@ -237,7 +237,7 @@ def _check_webhooks(actions, uris_to_check): @ResourceGroupPreparer(name_prefix='cli_test_metric_alert_v1') @VMPreparer(parameter_name='vm1') def test_metric_alert_single_scope(self, resource_group, vm1): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'alert': 'alert1', 'plan': 'plan1', @@ -301,7 +301,7 @@ def test_metric_alert_for_sql_database_scope(self, resource_group, resource_grou @VMPreparer(parameter_name='vm1') @VMPreparer(parameter_name='vm2') def test_metric_alert_multiple_scopes(self, resource_group, vm1, vm2): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'alert': 'alert1', 'plan': 'plan1', @@ -338,7 +338,7 @@ def test_metric_alert_multiple_scopes(self, resource_group, vm1, vm2): @ResourceGroupPreparer(name_prefix='cli_test_dynamic_metric_alert') @VMPreparer(parameter_name='vm1') def test_dynamic_metric_alert_basic(self, resource_group, vm1): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'alert': 'alert1', 'plan': 'plan1', @@ -375,7 +375,7 @@ def test_dynamic_metric_alert_basic(self, resource_group, vm1): @VMPreparer(parameter_name='vm1') @VMPreparer(parameter_name='vm2') def test_dynamic_metric_alert_multiple_scopes(self, resource_group, vm1, vm2): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'alert': 'alert1', 'plan': 'plan1', @@ -445,7 +445,7 @@ def test_dynamic_metric_alert_multiple_scopes(self, resource_group, vm1, vm2): @VMPreparer(parameter_name='vm1') @VMPreparer(parameter_name='vm2') def test_metric_alert_condition_create(self, resource_group, vm1, vm2): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'alert': 'alert1', 'plan': 'plan1', @@ -511,7 +511,7 @@ def test_metric_alert_condition_create(self, resource_group, vm1, vm2): @VMPreparer(parameter_name='vm1') @VMPreparer(parameter_name='vm2', resource_group_parameter_name='resource_group_2') def test_metric_alert_for_rg_and_sub(self, resource_group, resource_group_2): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'alert': 'rg-alert', 'alert2': 'sub-alert', @@ -555,7 +555,7 @@ def test_metric_alert_for_rg_and_sub(self, resource_group, resource_group_2): @ResourceGroupPreparer(name_prefix='cli_test_metric_alert_skip_metric_validation') @StorageAccountPreparer() def test_metric_alert_skip_metric_validation(self, resource_group, storage_account): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'alert': 'alert1', 'sa_id': resource_id( @@ -576,7 +576,7 @@ def test_metric_alert_skip_metric_validation(self, resource_group, storage_accou @ResourceGroupPreparer(name_prefix='cli_test_metric_namespace_special_character') @StorageAccountPreparer() def test_metric_namespace_special_character(self, resource_group, storage_account): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'alert': 'alert1', 'alert2': 'alert2', diff --git a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metrics.py b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metrics.py index 4d7b77af465..b7fd87c0b9d 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metrics.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_metrics.py @@ -11,7 +11,7 @@ class TestMonitorMetrics(ScenarioTest): @ResourceGroupPreparer() @StorageAccountPreparer() def test_monitor_metrics_scenario(self, resource_group, storage_account): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'sa_id': resource_id( resource_group=resource_group, diff --git a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_subscription_diagnostic_settings.py b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_subscription_diagnostic_settings.py index f508172d93c..8c6c4b97b5e 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_subscription_diagnostic_settings.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/tests/latest/test_monitor_subscription_diagnostic_settings.py @@ -11,7 +11,7 @@ class TestDiagnosticSettingsSubscriptionScenarios(ScenarioTest): @ResourceGroupPreparer(location='southcentralus') @StorageAccountPreparer(location='southcentralus') def test_monitor_diagnostic_settings_subscription(self, resource_group, storage_account): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'name': self.create_random_name('clitest', 20), 'ws': self.create_random_name('cliws', 20), diff --git a/src/azure-cli/azure/cli/command_modules/monitor/validators.py b/src/azure-cli/azure/cli/command_modules/monitor/validators.py index c24da2d586f..10a5197a79c 100644 --- a/src/azure-cli/azure/cli/command_modules/monitor/validators.py +++ b/src/azure-cli/azure/cli/command_modules/monitor/validators.py @@ -10,7 +10,7 @@ def process_autoscale_create_namespace(cmd, namespace): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id validate_tags(namespace) get_target_resource_validator('resource', required=True, preserve_resource_group_parameter=True)(cmd, namespace) @@ -102,7 +102,7 @@ def validate_autoscale_timegrain(namespace): def get_target_resource_validator(dest, required, preserve_resource_group_parameter=False, alias='resource'): def _validator(cmd, namespace): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id name_or_id = getattr(namespace, dest) rg = namespace.resource_group_name res_ns = namespace.namespace @@ -203,7 +203,7 @@ def validate_metrics_alert_condition(namespace): def validate_diagnostic_settings(cmd, namespace): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import is_valid_resource_id, resource_id, parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id, parse_resource_id get_target_resource_validator('resource_uri', required=True, preserve_resource_group_parameter=True)(cmd, namespace) if not namespace.resource_group_name: @@ -338,7 +338,7 @@ def validate_action_groups(cmd, namespace): if not action_groups: return - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from azure.cli.core.commands.client_factory import get_subscription_id subscription = get_subscription_id(cmd.cli_ctx) @@ -362,7 +362,7 @@ def validate_action_group_ids(cmd, namespace): if not action_groups: return - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from azure.cli.core.commands.client_factory import get_subscription_id action_group_ids = [] @@ -384,7 +384,7 @@ def validate_action_group_ids(cmd, namespace): def validate_storage_accounts_name_or_id(cmd, namespace): if namespace.storage_account_ids: - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from azure.cli.core.commands.client_factory import get_subscription_id for index, storage_account_id in enumerate(namespace.storage_account_ids): if not is_valid_resource_id(storage_account_id): diff --git a/src/azure-cli/azure/cli/command_modules/mysql/_network.py b/src/azure-cli/azure/cli/command_modules/mysql/_network.py index 61e91ddc991..4f13571fb1f 100644 --- a/src/azure-cli/azure/cli/command_modules/mysql/_network.py +++ b/src/azure-cli/azure/cli/command_modules/mysql/_network.py @@ -5,7 +5,7 @@ # pylint: disable=unused-argument, line-too-long, import-outside-toplevel from requests import get -from msrestazure.tools import is_valid_resource_id, parse_resource_id, is_valid_resource_name, resource_id # pylint: disable=import-error +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id, is_valid_resource_name, resource_id # pylint: disable=import-error from knack.log import get_logger from azure.cli.core.commands import LongRunningOperation from azure.cli.core.commands.client_factory import get_subscription_id diff --git a/src/azure-cli/azure/cli/command_modules/mysql/_util.py b/src/azure-cli/azure/cli/command_modules/mysql/_util.py index b86a7e75f27..06cdbdba7f5 100644 --- a/src/azure-cli/azure/cli/command_modules/mysql/_util.py +++ b/src/azure-cli/azure/cli/command_modules/mysql/_util.py @@ -19,7 +19,7 @@ from knack.log import get_logger from knack.arguments import ignore_type from knack.prompting import prompt_pass, prompt_y_n, NoTTYException -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from msrestazure.azure_exceptions import CloudError from azure.cli.core.commands.client_factory import get_subscription_id from azure.cli.core.commands.progress import IndeterminateProgressBar diff --git a/src/azure-cli/azure/cli/command_modules/mysql/_validators.py b/src/azure-cli/azure/cli/command_modules/mysql/_validators.py index e9b25596c24..9d302660c04 100644 --- a/src/azure-cli/azure/cli/command_modules/mysql/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/mysql/_validators.py @@ -6,7 +6,7 @@ import re from knack.util import CLIError from knack.log import get_logger -from msrestazure.tools import parse_resource_id, resource_id, is_valid_resource_id, is_valid_resource_name +from azure.cli.core.arm_tools import parse_resource_id, resource_id, is_valid_resource_id, is_valid_resource_name from azure.cli.core.azclierror import ValidationError, ArgumentUsageError, InvalidArgumentValueError from azure.cli.core.commands.client_factory import get_mgmt_service_client, get_subscription_id from azure.cli.core.util import parse_proxy_resource_id diff --git a/src/azure-cli/azure/cli/command_modules/mysql/custom.py b/src/azure-cli/azure/cli/command_modules/mysql/custom.py index cae47c52e20..6a37e596462 100644 --- a/src/azure-cli/azure/cli/command_modules/mysql/custom.py +++ b/src/azure-cli/azure/cli/command_modules/mysql/custom.py @@ -13,7 +13,7 @@ from urllib.request import urlretrieve from importlib import import_module from msrestazure.azure_exceptions import CloudError -from msrestazure.tools import resource_id, is_valid_resource_id, parse_resource_id +from azure.cli.core.arm_tools import resource_id, is_valid_resource_id, parse_resource_id from azure.core.exceptions import ResourceNotFoundError from azure.cli.core.commands.client_factory import get_subscription_id from azure.cli.command_modules.mysql.random.generate import generate_username diff --git a/src/azure-cli/azure/cli/command_modules/netappfiles/custom.py b/src/azure-cli/azure/cli/command_modules/netappfiles/custom.py index 7340585a61a..557f61f344e 100644 --- a/src/azure-cli/azure/cli/command_modules/netappfiles/custom.py +++ b/src/azure-cli/azure/cli/command_modules/netappfiles/custom.py @@ -10,7 +10,7 @@ from knack.log import get_logger from azure.cli.core.azclierror import ValidationError from azure.cli.core.aaz import has_value, AAZJsonSelector -from azure.mgmt.core.tools import is_valid_resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id from .aaz.latest.netappfiles import UpdateNetworkSiblingSet as _UpdateNetworkSiblingSet from .aaz.latest.netappfiles.account import Create as _AccountCreate, Update as _AccountUpdate from .aaz.latest.netappfiles.account.ad import Add as _ActiveDirectoryAdd, List as _ActiveDirectoryList, Update as _ActiveDirectoryUpdate diff --git a/src/azure-cli/azure/cli/command_modules/netappfiles/validators.py b/src/azure-cli/azure/cli/command_modules/netappfiles/validators.py index 550fbeb5761..f5213e8cac5 100644 --- a/src/azure-cli/azure/cli/command_modules/netappfiles/validators.py +++ b/src/azure-cli/azure/cli/command_modules/netappfiles/validators.py @@ -23,7 +23,7 @@ def _getattr(obj, attr): # Command validators def validate_resync_quotarule(cmd, namespace): - from azure.mgmt.core.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id # Get volume params netAppVolumeClient = volumes_mgmt_client_factory(cmd.cli_ctx, None) netAppVolumeQuotaRuleClient = volume_quota_rules_mgmt_client_factory(cmd.cli_ctx, None) diff --git a/src/azure-cli/azure/cli/command_modules/network/_format.py b/src/azure-cli/azure/cli/command_modules/network/_format.py index 2e6ad60e949..ccd4b72b78e 100644 --- a/src/azure-cli/azure/cli/command_modules/network/_format.py +++ b/src/azure-cli/azure/cli/command_modules/network/_format.py @@ -200,7 +200,7 @@ def transform_effective_route_table(result): def transform_effective_nsg(result): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id transformed = [] for item in result['value']: association = item['association'] diff --git a/src/azure-cli/azure/cli/command_modules/network/_validators.py b/src/azure-cli/azure/cli/command_modules/network/_validators.py index a5a73a35196..e47f02873ff 100644 --- a/src/azure-cli/azure/cli/command_modules/network/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/network/_validators.py @@ -45,7 +45,7 @@ def _resolve_api_version(rcf, resource_provider_namespace, parent_resource_path, def get_vnet_validator(dest): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id def _validate_vnet_name_or_id(cmd, namespace): SubResource = cmd.get_models('SubResource', resource_type=ResourceType.MGMT_RESOURCE_RESOURCES) @@ -79,7 +79,7 @@ def _validate_vpn_gateway_generation(namespace): def validate_ddos_name_or_id(cmd, namespace): if namespace.ddos_protection_plan: - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if not is_valid_resource_id(namespace.ddos_protection_plan): namespace.ddos_protection_plan = resource_id( subscription=get_subscription_id(cmd.cli_ctx), @@ -96,7 +96,7 @@ def dns_zone_name_type(value): def _generate_ag_subproperty_id(cli_ctx, namespace, child_type, child_name, subscription=None): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id return resource_id( subscription=subscription or get_subscription_id(cli_ctx), resource_group=namespace.resource_group_name, @@ -108,7 +108,7 @@ def _generate_ag_subproperty_id(cli_ctx, namespace, child_type, child_name, subs def _generate_lb_subproperty_id(cli_ctx, namespace, child_type, child_name, subscription=None): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id return resource_id( subscription=subscription or get_subscription_id(cli_ctx), resource_group=namespace.resource_group_name, @@ -120,7 +120,7 @@ def _generate_lb_subproperty_id(cli_ctx, namespace, child_type, child_name, subs def _generate_lb_id_list_from_names_or_ids(cli_ctx, namespace, prop, child_type): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id raw = getattr(namespace, prop) if not raw: return @@ -144,7 +144,7 @@ def validate_address_pool_id_list(cmd, namespace): def validate_address_pool_name_or_id(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id address_pool = namespace.backend_address_pool lb_name = namespace.load_balancer_name gateway_name = namespace.application_gateway_name @@ -250,7 +250,7 @@ def validate_managed_identity_resource_id(resource_id): def validate_user_assigned_identity(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.user_assigned_identity and not is_valid_resource_id(namespace.user_assigned_identity): namespace.user_assigned_identity = resource_id( @@ -263,7 +263,7 @@ def validate_user_assigned_identity(cmd, namespace): def validate_waf_policy(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.firewall_policy and not is_valid_resource_id(namespace.firewall_policy): namespace.firewall_policy = resource_id( subscription=get_subscription_id(cmd.cli_ctx), @@ -280,7 +280,7 @@ def validate_inbound_nat_rule_id_list(cmd, namespace): def validate_inbound_nat_rule_name_or_id(cmd, namespace): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id rule_name = namespace.inbound_nat_rule lb_name = namespace.load_balancer_name @@ -305,7 +305,7 @@ def validate_ip_tags(namespace): def validate_frontend_ip_configs(cmd, namespace): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if namespace.frontend_ip_configurations: config_ids = [] for item in namespace.frontend_ip_configurations: @@ -318,7 +318,7 @@ def validate_frontend_ip_configs(cmd, namespace): def validate_local_gateway(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.gateway_default_site and not is_valid_resource_id(namespace.gateway_default_site): namespace.gateway_default_site = resource_id( subscription=get_subscription_id(cmd.cli_ctx), @@ -342,7 +342,7 @@ def validate_peering_type(namespace): def validate_public_ip_prefix(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.public_ip_prefix and not is_valid_resource_id(namespace.public_ip_prefix): namespace.public_ip_prefix = resource_id( subscription=get_subscription_id(cmd.cli_ctx), @@ -353,7 +353,7 @@ def validate_public_ip_prefix(cmd, namespace): def validate_nat_gateway(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.nat_gateway and not is_valid_resource_id(namespace.nat_gateway): namespace.nat_gateway = resource_id( subscription=get_subscription_id(cmd.cli_ctx), @@ -372,7 +372,7 @@ def get_public_ip_validator(has_type_field=False, allow_none=False, allow_new=Fa default_none=False): """ Retrieves a validator for public IP address. Accepting all defaults will perform a check for an existing name or ID with no ARM-required -type parameter. """ - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id def simple_validator(cmd, namespace): if namespace.public_ip_address: @@ -404,7 +404,7 @@ def complex_validator_with_type(cmd, namespace): def get_subnet_validator(has_type_field=False, allow_none=False, allow_new=False, default_none=False): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id def simple_validator(cmd, namespace): if namespace.virtual_network_name is None and namespace.subnet is None: @@ -446,7 +446,7 @@ def complex_validator_with_type(cmd, namespace): def get_nsg_validator(has_type_field=False, allow_none=False, allow_new=False, default_none=False): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id def simple_validator(cmd, namespace): if namespace.network_security_group: @@ -469,7 +469,7 @@ def complex_validator_with_type(cmd, namespace): def validate_service_endpoint_policy(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.service_endpoint_policy: policy_ids = [] for policy in namespace.service_endpoint_policy: @@ -499,7 +499,7 @@ def validate_servers(namespace): def validate_private_dns_zone(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.private_dns_zone and not is_valid_resource_id(namespace.private_dns_zone): namespace.private_dns_zone = resource_id( subscription=get_subscription_id(cmd.cli_ctx), @@ -511,7 +511,7 @@ def validate_private_dns_zone(cmd, namespace): def get_virtual_network_validator(has_type_field=False, allow_none=False, allow_new=False, default_none=False): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id def simple_validator(cmd, namespace): if namespace.virtual_network: @@ -617,7 +617,7 @@ def _validate_cert(namespace, param_name): def process_vpn_connection_create_namespace(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id get_default_location_from_resource_group(cmd, namespace) validate_tags(namespace) @@ -676,7 +676,7 @@ def load_cert_validator(namespace): def get_network_watcher_from_location(remove=False, watcher_name='watcher_name', rg_name='watcher_rg'): def _validator(cmd, namespace): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id from .aaz.latest.network.watcher import List location = namespace.location @@ -695,7 +695,7 @@ def _validator(cmd, namespace): def _process_vnet_name_and_id(vnet, cmd, resource_group_name): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if vnet and not is_valid_resource_id(vnet): vnet = resource_id( subscription=get_subscription_id(cmd.cli_ctx), @@ -708,7 +708,7 @@ def _process_vnet_name_and_id(vnet, cmd, resource_group_name): def _process_subnet_name_and_id(subnet, vnet, cmd, resource_group_name): from azure.cli.core.azclierror import UnrecognizedArgumentError - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if subnet and not is_valid_resource_id(subnet): vnet = _process_vnet_name_and_id(vnet, cmd, resource_group_name) if vnet is None: @@ -719,7 +719,7 @@ def _process_subnet_name_and_id(subnet, vnet, cmd, resource_group_name): def process_nw_flow_log_show_namespace(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from azure.cli.core.commands.arm import get_arm_resource_by_id if hasattr(namespace, 'nsg') and namespace.nsg is not None: @@ -741,7 +741,7 @@ def process_nw_flow_log_show_namespace(cmd, namespace): def process_lb_outbound_rule_namespace(cmd, namespace): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id validate_frontend_ip_configs(cmd, namespace) @@ -752,7 +752,7 @@ def process_lb_outbound_rule_namespace(cmd, namespace): def validate_ag_address_pools(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id address_pools = namespace.app_gateway_backend_address_pools gateway_name = namespace.application_gateway_name delattr(namespace, 'application_gateway_name') @@ -884,7 +884,7 @@ def process_private_link_resource_id_argument(cmd, namespace): namespace.resource_provider])): raise CLIError("usage error: --id / -g -n --type") - from msrestazure.tools import is_valid_resource_id, parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id if not is_valid_resource_id(namespace.id): raise CLIError("Resource ID is invalid. Please check it.") split_resource_id = parse_resource_id(namespace.id) @@ -921,7 +921,7 @@ def process_private_endpoint_connection_id_argument(cmd, namespace): def process_vnet_name_or_id(cmd, namespace): - from azure.mgmt.core.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.vnet and not is_valid_resource_id(namespace.vnet): namespace.vnet = resource_id( subscription=get_subscription_id(cmd.cli_ctx), diff --git a/src/azure-cli/azure/cli/command_modules/network/azure_stack/_format.py b/src/azure-cli/azure/cli/command_modules/network/azure_stack/_format.py index b01e35cfd88..6fd9b7470c6 100644 --- a/src/azure-cli/azure/cli/command_modules/network/azure_stack/_format.py +++ b/src/azure-cli/azure/cli/command_modules/network/azure_stack/_format.py @@ -152,7 +152,7 @@ def transform_effective_route_table(result): def transform_effective_nsg(result): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id transformed = [] for item in result['value']: association = item['association'] diff --git a/src/azure-cli/azure/cli/command_modules/network/azure_stack/_validators.py b/src/azure-cli/azure/cli/command_modules/network/azure_stack/_validators.py index df87a657720..be402dd77cc 100644 --- a/src/azure-cli/azure/cli/command_modules/network/azure_stack/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/network/azure_stack/_validators.py @@ -17,7 +17,7 @@ def get_vnet_validator(dest): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id def _validate_vnet_name_or_id(cmd, namespace): SubResource = cmd.get_models('SubResource') @@ -46,7 +46,7 @@ def _validate_vnet_name_or_id(cmd, namespace): def validate_ddos_name_or_id(cmd, namespace): if namespace.ddos_protection_plan: - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if not is_valid_resource_id(namespace.ddos_protection_plan): namespace.ddos_protection_plan = resource_id( subscription=get_subscription_id(cmd.cli_ctx), @@ -63,7 +63,7 @@ def dns_zone_name_type(value): def _generate_ag_subproperty_id(cli_ctx, namespace, child_type, child_name, subscription=None): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id return resource_id( subscription=subscription or get_subscription_id(cli_ctx), resource_group=namespace.resource_group_name, @@ -75,7 +75,7 @@ def _generate_ag_subproperty_id(cli_ctx, namespace, child_type, child_name, subs def _generate_lb_subproperty_id(cli_ctx, namespace, child_type, child_name, subscription=None): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id return resource_id( subscription=subscription or get_subscription_id(cli_ctx), resource_group=namespace.resource_group_name, @@ -87,7 +87,7 @@ def _generate_lb_subproperty_id(cli_ctx, namespace, child_type, child_name, subs def validate_address_pool_name_or_id(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id address_pool = namespace.backend_address_pool lb_name = namespace.load_balancer_name gateway_name = getattr(namespace, 'application_gateway_name', None) @@ -145,7 +145,7 @@ def validate_metadata(namespace): def validate_public_ip_prefix(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.public_ip_prefix and not is_valid_resource_id(namespace.public_ip_prefix): namespace.public_ip_prefix = resource_id( subscription=get_subscription_id(cmd.cli_ctx), @@ -164,7 +164,7 @@ def get_public_ip_validator(has_type_field=False, allow_none=False, allow_new=Fa default_none=False): """ Retrieves a validator for public IP address. Accepting all defaults will perform a check for an existing name or ID with no ARM-required -type parameter. """ - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id def simple_validator(cmd, namespace): if namespace.public_ip_address: @@ -196,7 +196,7 @@ def complex_validator_with_type(cmd, namespace): def get_subnet_validator(has_type_field=False, allow_none=False, allow_new=False, default_none=False): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id def simple_validator(cmd, namespace): if namespace.virtual_network_name is None and namespace.subnet is None: @@ -299,7 +299,7 @@ def _inform_coming_breaking_change_for_public_ip(namespace): def process_vpn_connection_create_namespace(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id get_default_location_from_resource_group(cmd, namespace) validate_tags(namespace) @@ -359,7 +359,7 @@ def process_private_link_resource_id_argument(cmd, namespace): namespace.resource_provider])): raise CLIError("usage error: --id / -g -n --type") - from msrestazure.tools import is_valid_resource_id, parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id if not is_valid_resource_id(namespace.id): raise CLIError("Resource ID is invalid. Please check it.") split_resource_id = parse_resource_id(namespace.id) diff --git a/src/azure-cli/azure/cli/command_modules/network/azure_stack/custom.py b/src/azure-cli/azure/cli/command_modules/network/azure_stack/custom.py index 8a55d11b35a..bc4f34d342d 100644 --- a/src/azure-cli/azure/cli/command_modules/network/azure_stack/custom.py +++ b/src/azure-cli/azure/cli/command_modules/network/azure_stack/custom.py @@ -4,7 +4,7 @@ # -------------------------------------------------------------------------------------------- from collections import Counter, OrderedDict -from msrestazure.tools import parse_resource_id, is_valid_resource_id, resource_id +from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id, resource_id from knack.log import get_logger diff --git a/src/azure-cli/azure/cli/command_modules/network/azure_stack/profile_2020_09_01_hybrid/operations/public_ip.py b/src/azure-cli/azure/cli/command_modules/network/azure_stack/profile_2020_09_01_hybrid/operations/public_ip.py index de5b450d341..d46cfcf10ac 100644 --- a/src/azure-cli/azure/cli/command_modules/network/azure_stack/profile_2020_09_01_hybrid/operations/public_ip.py +++ b/src/azure-cli/azure/cli/command_modules/network/azure_stack/profile_2020_09_01_hybrid/operations/public_ip.py @@ -30,7 +30,7 @@ def create_public_ip(cmd, resource_group_name, public_ip_address_name, location= } if public_ip_prefix: - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id metadata = parse_resource_id(public_ip_prefix) resource_group_name = metadata["resource_group"] public_ip_prefix_name = metadata["resource_name"] diff --git a/src/azure-cli/azure/cli/command_modules/network/custom.py b/src/azure-cli/azure/cli/command_modules/network/custom.py index c151f03cf10..89bebc6b99f 100644 --- a/src/azure-cli/azure/cli/command_modules/network/custom.py +++ b/src/azure-cli/azure/cli/command_modules/network/custom.py @@ -10,7 +10,7 @@ import socket from knack.log import get_logger -from msrestazure.tools import parse_resource_id, is_valid_resource_id, resource_id +from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id, resource_id from azure.cli.core.aaz import AAZClientConfiguration, has_value, register_client from azure.cli.core.aaz._client import AAZMgmtClient diff --git a/src/azure-cli/azure/cli/command_modules/network/operations/load_balancer.py b/src/azure-cli/azure/cli/command_modules/network/operations/load_balancer.py index c3c1219e2f5..af54327b78a 100644 --- a/src/azure-cli/azure/cli/command_modules/network/operations/load_balancer.py +++ b/src/azure-cli/azure/cli/command_modules/network/operations/load_balancer.py @@ -7,7 +7,7 @@ from azure.cli.core.azclierror import ArgumentUsageError from azure.cli.core.aaz import register_command, AAZResourceIdArgFormat, has_value, AAZListArg, AAZResourceIdArg, \ AAZStrArg, AAZArgEnum -from msrestazure.tools import is_valid_resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id from ..aaz.latest.network.lb import Delete as _LBDelete, Update as _LBUpdate, List as _LBList, Show as _LBShow from ..aaz.latest.network.lb.frontend_ip import Create as _LBFrontendIPCreate, Update as _LBFrontendIPUpdate, \ Show as _LBFrontendIPShow, Delete as _LBFrontendIPDelete, List as _LBFrontendIPList diff --git a/src/azure-cli/azure/cli/command_modules/network/operations/watcher.py b/src/azure-cli/azure/cli/command_modules/network/operations/watcher.py index 3a07e780690..85874871629 100644 --- a/src/azure-cli/azure/cli/command_modules/network/operations/watcher.py +++ b/src/azure-cli/azure/cli/command_modules/network/operations/watcher.py @@ -5,7 +5,7 @@ # pylint: disable=line-too-long, protected-access, too-few-public-methods from knack.log import get_logger from knack.util import CLIError -from msrestazure.tools import is_valid_resource_id, parse_resource_id, resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id, resource_id from azure.cli.core.azclierror import ValidationError, RequiredArgumentMissingError, MutuallyExclusiveArgumentError from azure.cli.core.commands.arm import get_arm_resource_by_id diff --git a/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2018_03_01/test_network_commands.py b/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2018_03_01/test_network_commands.py index a0dba114fb7..538f328ea68 100644 --- a/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2018_03_01/test_network_commands.py +++ b/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2018_03_01/test_network_commands.py @@ -17,7 +17,7 @@ from knack.util import CLIError -from msrestazure.tools import resource_id +from azure.cli.core.arm_tools import resource_id TEST_DIR = os.path.abspath(os.path.join(os.path.abspath(__file__), '..')) diff --git a/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2019_03_01/test_network_commands.py b/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2019_03_01/test_network_commands.py index 1ced392baae..6648000bab4 100644 --- a/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2019_03_01/test_network_commands.py +++ b/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2019_03_01/test_network_commands.py @@ -16,7 +16,7 @@ from knack.util import CLIError -from msrestazure.tools import resource_id +from azure.cli.core.arm_tools import resource_id TEST_DIR = os.path.abspath(os.path.join(os.path.abspath(__file__), '..')) diff --git a/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2020_09_01/test_network_commands.py b/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2020_09_01/test_network_commands.py index 1c83f356d95..512258063b3 100644 --- a/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2020_09_01/test_network_commands.py +++ b/src/azure-cli/azure/cli/command_modules/network/tests/hybrid_2020_09_01/test_network_commands.py @@ -16,7 +16,7 @@ from knack.util import CLIError -from msrestazure.tools import resource_id +from azure.cli.core.arm_tools import resource_id TEST_DIR = os.path.abspath(os.path.join(os.path.abspath(__file__), '..')) diff --git a/src/azure-cli/azure/cli/command_modules/network/tests/latest/test_network_commands.py b/src/azure-cli/azure/cli/command_modules/network/tests/latest/test_network_commands.py index b974bc4e019..441798281e6 100644 --- a/src/azure-cli/azure/cli/command_modules/network/tests/latest/test_network_commands.py +++ b/src/azure-cli/azure/cli/command_modules/network/tests/latest/test_network_commands.py @@ -21,7 +21,7 @@ from knack.util import CLIError -from msrestazure.tools import resource_id +from azure.cli.core.arm_tools import resource_id from .credential_replacer import ExpressRoutePortLOAContentReplacer diff --git a/src/azure-cli/azure/cli/command_modules/network/tests/latest/test_private_endpoint_commands.py b/src/azure-cli/azure/cli/command_modules/network/tests/latest/test_private_endpoint_commands.py index e0efb9a6678..b3c9f0440d8 100644 --- a/src/azure-cli/azure/cli/command_modules/network/tests/latest/test_private_endpoint_commands.py +++ b/src/azure-cli/azure/cli/command_modules/network/tests/latest/test_private_endpoint_commands.py @@ -2151,7 +2151,7 @@ def test_disk_access_private_endpoint(self, resource_group): class NetworkARMTemplateBasedScenarioTest(ScenarioTest): def _test_private_endpoint_connection_scenario(self, resource_group, target_resource_name, resource_type): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'target_resource_name': target_resource_name, 'target_resource_id': resource_id(subscription=self.get_subscription_id(), @@ -2243,7 +2243,7 @@ class NetworkPrivateLinkDigitalTwinsScenarioTest(ScenarioTest): def test_private_endpoint_connection_digitaltwins( self, resource_group, resource_group_location ): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id resource_name = self.create_random_name("cli-test-dt-", 24) templateFile = os.path.join( @@ -2375,7 +2375,7 @@ class NetworkPrivateLinkSearchScenarioTest(ScenarioTest): def test_private_endpoint_connection_search( self, resource_group, resource_group_location ): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id resource_name = self.create_random_name("cli-test-azs-", 24) templateFile = os.path.join( @@ -2753,7 +2753,7 @@ def test_private_endpoint_connection_databricks_workspaces(self, resource_group) class PowerBINetworkARMTemplateBasedScenarioTest(ScenarioTest): def _test_private_endpoint_connection_scenario_powerbi(self, resource_group, powerBIResourceName, resource_type, reject): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id tenant_id = self.cmd('account list --query "[?isDefault].tenantId" -o tsv').output.strip() @@ -4396,7 +4396,7 @@ def test_private_link_resource_cosmosdb_postgres(self, resource_group): @ResourceGroupPreparer(name_prefix='cli_test_cosmosdb_pg', random_name_length=30) def test_private_endpoint_connection_cosmosdb_postgres(self, resource_group): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id namespace = 'Microsoft.DBforPostgreSQL' instance_type = 'serverGroupsv2' resource_name = self.create_random_name(prefix='cli', length=10) @@ -4513,7 +4513,7 @@ def test_private_link_resource_elasticsan(self): @live_only() @ResourceGroupPreparer(name_prefix='cli_test_elastic_san', random_name_length=30, location='eastus2euap') def test_private_endpoint_connection_elasticsan(self, resource_group): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id namespace = 'Microsoft.ElasticSan' instance_type = 'elasticSans' resource_name = self.create_random_name(prefix='cli', length=10) @@ -4638,7 +4638,7 @@ def test_private_link_resource_cosmosdb_mongo_clusters(self, resource_group): @ResourceGroupPreparer(name_prefix='cli_test_cosmosdb_mongo_cl', random_name_length=30, location='eastus') def test_private_endpoint_connection_cosmosdb_mongo_clusters(self, resource_group): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id namespace = 'Microsoft.DocumentDB' resource_type = 'mongoClusters' secret1 = "mongo" @@ -4782,7 +4782,7 @@ def test_private_link_resource_postgres_flexible_server(self, resource_group): @ResourceGroupPreparer(name_prefix='cli_test_fspg', random_name_length=18, location='eastus2euap') def test_private_endpoint_connection_postgres_flexible_server(self, resource_group): - from azure.mgmt.core.tools import resource_id + from azure.cli.core.arm_tools import resource_id namespace = 'Microsoft.DBforPostgreSQL' instance_type = 'flexibleServers' resource_name = self.create_random_name(prefix='clitest', length=15) diff --git a/src/azure-cli/azure/cli/command_modules/network/tests/profile_2017_03_09/test_network_commands.py b/src/azure-cli/azure/cli/command_modules/network/tests/profile_2017_03_09/test_network_commands.py index 206405456f4..f1d139371c9 100644 --- a/src/azure-cli/azure/cli/command_modules/network/tests/profile_2017_03_09/test_network_commands.py +++ b/src/azure-cli/azure/cli/command_modules/network/tests/profile_2017_03_09/test_network_commands.py @@ -16,7 +16,7 @@ from knack.util import CLIError -from msrestazure.tools import resource_id +from azure.cli.core.arm_tools import resource_id TEST_DIR = os.path.abspath(os.path.join(os.path.abspath(__file__), '..')) diff --git a/src/azure-cli/azure/cli/command_modules/policyinsights/_validators.py b/src/azure-cli/azure/cli/command_modules/policyinsights/_validators.py index 8d4a7d11434..39cb633f157 100644 --- a/src/azure-cli/azure/cli/command_modules/policyinsights/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/policyinsights/_validators.py @@ -3,7 +3,7 @@ # Licensed under the MIT License. See License.txt in the project root for license information. # -------------------------------------------------------------------------------------------- -from msrestazure.tools import is_valid_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id from knack.util import CLIError diff --git a/src/azure-cli/azure/cli/command_modules/policyinsights/custom.py b/src/azure-cli/azure/cli/command_modules/policyinsights/custom.py index cc56a5f1252..8eb6ff6a9de 100644 --- a/src/azure-cli/azure/cli/command_modules/policyinsights/custom.py +++ b/src/azure-cli/azure/cli/command_modules/policyinsights/custom.py @@ -3,7 +3,7 @@ # Licensed under the MIT License. See License.txt in the project root for license information. # -------------------------------------------------------------------------------------------- -from msrestazure.tools import is_valid_resource_id, resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from azure.cli.core.commands.client_factory import get_subscription_id from azure.cli.core.util import sdk_no_wait diff --git a/src/azure-cli/azure/cli/command_modules/privatedns/_validators.py b/src/azure-cli/azure/cli/command_modules/privatedns/_validators.py index 9be6d375e5f..209b2920ced 100644 --- a/src/azure-cli/azure/cli/command_modules/privatedns/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/privatedns/_validators.py @@ -4,7 +4,7 @@ # -------------------------------------------------------------------------------------------- # pylint:disable=import-error -from msrestazure.tools import is_valid_resource_id, resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from azure.cli.core.commands.client_factory import get_subscription_id diff --git a/src/azure-cli/azure/cli/command_modules/rdbms/_flexible_server_util.py b/src/azure-cli/azure/cli/command_modules/rdbms/_flexible_server_util.py index 2be0ad8a70f..f3696a659ef 100644 --- a/src/azure-cli/azure/cli/command_modules/rdbms/_flexible_server_util.py +++ b/src/azure-cli/azure/cli/command_modules/rdbms/_flexible_server_util.py @@ -15,7 +15,7 @@ import yaml from knack.log import get_logger from knack.prompting import prompt_y_n, NoTTYException -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from msrestazure.azure_exceptions import CloudError from azure.cli.core.util import CLIError from azure.cli.core.azclierror import AuthenticationError diff --git a/src/azure-cli/azure/cli/command_modules/rdbms/custom.py b/src/azure-cli/azure/cli/command_modules/rdbms/custom.py index 791a4b1713a..1480b86f578 100644 --- a/src/azure-cli/azure/cli/command_modules/rdbms/custom.py +++ b/src/azure-cli/azure/cli/command_modules/rdbms/custom.py @@ -9,7 +9,7 @@ import re from dateutil.tz import tzutc # pylint: disable=import-error from msrestazure.azure_exceptions import CloudError -from msrestazure.tools import resource_id, is_valid_resource_id, parse_resource_id # pylint: disable=import-error +from azure.cli.core.arm_tools import resource_id, is_valid_resource_id, parse_resource_id # pylint: disable=import-error from knack.log import get_logger from knack.util import todict from urllib.request import urlretrieve diff --git a/src/azure-cli/azure/cli/command_modules/rdbms/flexible_server_custom_postgres.py b/src/azure-cli/azure/cli/command_modules/rdbms/flexible_server_custom_postgres.py index de804106f99..bb77a1a71cd 100644 --- a/src/azure-cli/azure/cli/command_modules/rdbms/flexible_server_custom_postgres.py +++ b/src/azure-cli/azure/cli/command_modules/rdbms/flexible_server_custom_postgres.py @@ -13,7 +13,7 @@ from dateutil.tz import tzutc # pylint: disable=import-error import uuid from msrestazure.azure_exceptions import CloudError -from msrestazure.tools import resource_id, is_valid_resource_id, parse_resource_id # pylint: disable=import-error +from azure.cli.core.arm_tools import resource_id, is_valid_resource_id, parse_resource_id # pylint: disable=import-error from knack.log import get_logger from azure.cli.core.commands.client_factory import get_subscription_id from azure.cli.core.local_context import ALL diff --git a/src/azure-cli/azure/cli/command_modules/rdbms/flexible_server_virtual_network.py b/src/azure-cli/azure/cli/command_modules/rdbms/flexible_server_virtual_network.py index 74231012ff4..a15cdb7db3e 100644 --- a/src/azure-cli/azure/cli/command_modules/rdbms/flexible_server_virtual_network.py +++ b/src/azure-cli/azure/cli/command_modules/rdbms/flexible_server_virtual_network.py @@ -5,7 +5,7 @@ # pylint: disable=unused-argument, line-too-long, import-outside-toplevel from requests import get -from msrestazure.tools import is_valid_resource_id, parse_resource_id, is_valid_resource_name, resource_id # pylint: disable=import-error +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id, is_valid_resource_name, resource_id # pylint: disable=import-error from knack.log import get_logger from azure.cli.core.commands import LongRunningOperation from azure.cli.core.commands.client_factory import get_subscription_id diff --git a/src/azure-cli/azure/cli/command_modules/rdbms/validators.py b/src/azure-cli/azure/cli/command_modules/rdbms/validators.py index 33996751c06..a421b76fd8a 100644 --- a/src/azure-cli/azure/cli/command_modules/rdbms/validators.py +++ b/src/azure-cli/azure/cli/command_modules/rdbms/validators.py @@ -8,7 +8,7 @@ from knack.util import CLIError from knack.log import get_logger import math -from msrestazure.tools import parse_resource_id, resource_id, is_valid_resource_id, is_valid_resource_name +from azure.cli.core.arm_tools import parse_resource_id, resource_id, is_valid_resource_id, is_valid_resource_name from azure.cli.core.azclierror import ValidationError, ArgumentUsageError from azure.cli.core.commands.client_factory import get_mgmt_service_client, get_subscription_id from azure.cli.core.commands.validators import ( diff --git a/src/azure-cli/azure/cli/command_modules/redis/custom.py b/src/azure-cli/azure/cli/command_modules/redis/custom.py index 5cd5ec3c20c..30a254479d9 100644 --- a/src/azure-cli/azure/cli/command_modules/redis/custom.py +++ b/src/azure-cli/azure/cli/command_modules/redis/custom.py @@ -140,7 +140,7 @@ def get_key_value_pair(string): def cli_redis_create_server_link(cmd, client, resource_group_name, name, server_to_link, replication_role): redis_client = cf_redis(cmd.cli_ctx) from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if not is_valid_resource_id(server_to_link): server_to_link = resource_id( subscription=get_subscription_id(cmd.cli_ctx), @@ -179,7 +179,7 @@ def cli_redis_list_cache(client, resource_group_name=None): def get_cache_from_resource_id(client, cache_resource_id): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id id_comps = parse_resource_id(cache_resource_id) return client.get(id_comps['resource_group'], id_comps['name']) diff --git a/src/azure-cli/azure/cli/command_modules/resource/_validators.py b/src/azure-cli/azure/cli/command_modules/resource/_validators.py index a10094869a2..9c711cd287d 100644 --- a/src/azure-cli/azure/cli/command_modules/resource/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/resource/_validators.py @@ -30,7 +30,7 @@ def _validate_template_spec(namespace): raise CLIError('incorrect usage: Please enter ' 'a resource group and resource name or a resource ID for --template-spec') else: - from azure.mgmt.core.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id namespace.template_spec = namespace.template_spec.strip("\"") if not is_valid_resource_id(namespace.template_spec): raise CLIError('--template-spec is not a valid resource ID.') @@ -59,7 +59,7 @@ def _validate_deployment_name_with_template_specs(namespace): if namespace.template_uri and urlparse(namespace.template_uri).scheme: template_filename = urlsplit(namespace.template_uri).path if namespace.template_spec: - from azure.mgmt.core.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id namespace.template_spec = namespace.template_spec.strip("\"") if not is_valid_resource_id(namespace.template_spec): raise CLIError('--template-spec is not a valid resource ID.') @@ -109,7 +109,7 @@ def internal_validate_lock_parameters(namespace, resource_group, resource_provid parent_resource_path, resource_type, resource_name): if resource_group is None: if resource_name is not None: - from msrestazure.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id if not is_valid_resource_id(resource_name): raise CLIError('--resource is not a valid resource ID. ' '--resource as a resource name is ignored if --resource-group is not given.') diff --git a/src/azure-cli/azure/cli/command_modules/resource/custom.py b/src/azure-cli/azure/cli/command_modules/resource/custom.py index 9cacc492668..4cc2a65ec90 100644 --- a/src/azure-cli/azure/cli/command_modules/resource/custom.py +++ b/src/azure-cli/azure/cli/command_modules/resource/custom.py @@ -19,7 +19,7 @@ from urllib.request import urlopen from urllib.parse import urlparse, unquote -from msrestazure.tools import is_valid_resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id from azure.mgmt.resource.resources.models import GenericResource, DeploymentMode @@ -66,7 +66,7 @@ def _build_resource_id(**kwargs): - from msrestazure.tools import resource_id as resource_id_from_dict + from azure.cli.core.arm_tools import resource_id as resource_id_from_dict try: return resource_id_from_dict(**kwargs) except KeyError: @@ -3257,7 +3257,7 @@ def create_policy_assignment(cmd, policy=None, policy_set_definition=None, def _get_resource_id(cli_ctx, val, resource_group, resource_type, resource_namespace): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id if is_valid_resource_id(val): return val diff --git a/src/azure-cli/azure/cli/command_modules/resource/tests/latest/test_resource.py b/src/azure-cli/azure/cli/command_modules/resource/tests/latest/test_resource.py index 1d651e1a0cf..5d90e7e2359 100644 --- a/src/azure-cli/azure/cli/command_modules/resource/tests/latest/test_resource.py +++ b/src/azure-cli/azure/cli/command_modules/resource/tests/latest/test_resource.py @@ -4577,7 +4577,7 @@ def test_managedappdef(self, resource_group): with mock.patch('azure.cli.command_modules.role.custom._gen_guid', side_effect=self.create_guid): role_assignment = self.cmd( 'role assignment create --assignee {upn} --role contributor --scope "/subscriptions/{sub}" ').get_output_in_json() - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id role_definition_id = parse_resource_id(role_assignment['roleDefinitionId'])['name'] self.kwargs.update({ @@ -4656,7 +4656,7 @@ def test_managedappdef_inline(self, resource_group): with mock.patch('azure.cli.command_modules.role.custom._gen_guid', side_effect=self.create_guid): role_assignment = self.cmd( 'role assignment create --assignee {upn} --role contributor --scope "/subscriptions/{sub}" ').get_output_in_json() - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id role_definition_id = parse_resource_id(role_assignment['roleDefinitionId'])['name'] self.kwargs.update({ @@ -4717,7 +4717,7 @@ def test_managed_app_def_deployment_mode(self): with mock.patch('azure.cli.command_modules.role.custom._gen_guid', side_effect=self.create_guid): role_assignment = self.cmd( 'role assignment create --assignee {upn} --role contributor --scope "/subscriptions/{sub}" ').get_output_in_json() - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id role_definition_id = parse_resource_id(role_assignment['roleDefinitionId'])['name'] self.kwargs.update({ 'app_def': self.create_random_name('def', 10), @@ -4750,7 +4750,7 @@ def test_managedapp(self, resource_group): with mock.patch('azure.cli.command_modules.role.custom._gen_guid', side_effect=self.create_guid): role_assignment = self.cmd('role assignment create --assignee {upn} --role contributor --scope "/subscriptions/{sub}" ').get_output_in_json() - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id role_definition_id = parse_resource_id(role_assignment['roleDefinitionId'])['name'] self.kwargs.update({ diff --git a/src/azure-cli/azure/cli/command_modules/role/custom.py b/src/azure-cli/azure/cli/command_modules/role/custom.py index 28051e04814..3faad7dd97d 100644 --- a/src/azure-cli/azure/cli/command_modules/role/custom.py +++ b/src/azure-cli/azure/cli/command_modules/role/custom.py @@ -102,7 +102,7 @@ def _create_update_role_definition(cmd, role_definition, for_update): scopes = (scopes_in_definition if scopes_in_definition else ['/subscriptions/' + definitions_client._config.subscription_id]) if role_resource_id: - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id role_id = parse_resource_id(role_resource_id)['name'] role_name = role_definition['roleName'] else: @@ -596,7 +596,7 @@ def _build_role_scope(resource_group_name, scope, subscription_id): if resource_group_name: err = 'Resource group "{}" is redundant because scope is supplied' raise CLIError(err.format(resource_group_name)) - from azure.mgmt.core.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if scope.startswith('/subscriptions/') and not is_valid_resource_id(scope): raise CLIError('Invalid scope. Please use --help to view the valid format.') elif resource_group_name: diff --git a/src/azure-cli/azure/cli/command_modules/security/custom.py b/src/azure-cli/azure/cli/command_modules/security/custom.py index 421f6e386d5..ba8d22e145e 100644 --- a/src/azure-cli/azure/cli/command_modules/security/custom.py +++ b/src/azure-cli/azure/cli/command_modules/security/custom.py @@ -31,7 +31,7 @@ from azure.mgmt.security.v2023_01_01.models import (Extension) from azure.cli.core.commands.client_factory import get_subscription_id from azure.cli.core.azclierror import (MutuallyExclusiveArgumentError) -from msrestazure.tools import resource_id +from azure.cli.core.arm_tools import resource_id from msrestazure.azure_exceptions import CloudError from knack.log import get_logger from ._utils import ( diff --git a/src/azure-cli/azure/cli/command_modules/security/tests/latest/test_tasks_scenario.py b/src/azure-cli/azure/cli/command_modules/security/tests/latest/test_tasks_scenario.py index 6286e79fb7d..eeee57d1e2b 100644 --- a/src/azure-cli/azure/cli/command_modules/security/tests/latest/test_tasks_scenario.py +++ b/src/azure-cli/azure/cli/command_modules/security/tests/latest/test_tasks_scenario.py @@ -5,7 +5,7 @@ from azure.cli.testsdk import ScenarioTest from azure.cli.testsdk.scenario_tests import AllowLargeResponse -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id import re diff --git a/src/azure-cli/azure/cli/command_modules/servicebus/_validators.py b/src/azure-cli/azure/cli/command_modules/servicebus/_validators.py index f21c16e8f0b..3fad7b9dfa6 100644 --- a/src/azure-cli/azure/cli/command_modules/servicebus/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/servicebus/_validators.py @@ -65,7 +65,7 @@ def _validate_auto_delete_on_idle(namespace): def validate_partner_namespace(cmd, namespace): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.partner_namespace: if not is_valid_resource_id(namespace.partner_namespace): namespace.partner_namespace = resource_id( @@ -78,7 +78,7 @@ def validate_partner_namespace(cmd, namespace): def validate_target_namespace(cmd, namespace): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id if namespace.target_namespace: if not is_valid_resource_id(namespace.target_namespace): namespace.target_namespace = resource_id( @@ -96,7 +96,7 @@ def validate_premiumsku_capacity(namespace): # Validates if a subnet id or name have been given by the user. If subnet id is given, vnet-name should not be provided. def validate_subnet(cmd, namespace): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id subnet = namespace.subnet diff --git a/src/azure-cli/azure/cli/command_modules/serviceconnector/_addon_factory.py b/src/azure-cli/azure/cli/command_modules/serviceconnector/_addon_factory.py index dd33f3a0f3c..eb965e8317c 100644 --- a/src/azure-cli/azure/cli/command_modules/serviceconnector/_addon_factory.py +++ b/src/azure-cli/azure/cli/command_modules/serviceconnector/_addon_factory.py @@ -5,7 +5,7 @@ import re from knack.log import get_logger -from azure.mgmt.core.tools import ( +from azure.cli.core.arm_tools import ( parse_resource_id, ) from azure.cli.core import telemetry diff --git a/src/azure-cli/azure/cli/command_modules/serviceconnector/_utils.py b/src/azure-cli/azure/cli/command_modules/serviceconnector/_utils.py index f2447d31448..826c63e9324 100644 --- a/src/azure-cli/azure/cli/command_modules/serviceconnector/_utils.py +++ b/src/azure-cli/azure/cli/command_modules/serviceconnector/_utils.py @@ -19,7 +19,7 @@ RESOURCE ) from azure.cli.core import get_default_cli -from azure.mgmt.core.tools import ( +from azure.cli.core.arm_tools import ( parse_resource_id, is_valid_resource_id as is_valid_resource_id_sdk ) diff --git a/src/azure-cli/azure/cli/command_modules/serviceconnector/_validators.py b/src/azure-cli/azure/cli/command_modules/serviceconnector/_validators.py index f91b20bc150..4168468991c 100644 --- a/src/azure-cli/azure/cli/command_modules/serviceconnector/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/serviceconnector/_validators.py @@ -12,7 +12,7 @@ prompt, prompt_pass ) -from azure.mgmt.core.tools import ( +from azure.cli.core.arm_tools import ( parse_resource_id, ) from azure.cli.core import telemetry diff --git a/src/azure-cli/azure/cli/command_modules/sql/_validators.py b/src/azure-cli/azure/cli/command_modules/sql/_validators.py index 8c49b7a618c..9c3eb481568 100644 --- a/src/azure-cli/azure/cli/command_modules/sql/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/sql/_validators.py @@ -79,7 +79,7 @@ def _expansion_validator_impl(namespace): # Validates if a subnet id or name have been given by the user. If subnet id is given, vnet-name should not be provided. def validate_subnet(cmd, namespace): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id # Different custom function arg names, instance pool has subnet_id diff --git a/src/azure-cli/azure/cli/command_modules/sql/custom.py b/src/azure-cli/azure/cli/command_modules/sql/custom.py index 4e3c51c079e..80bfb1b6fd2 100644 --- a/src/azure-cli/azure/cli/command_modules/sql/custom.py +++ b/src/azure-cli/azure/cli/command_modules/sql/custom.py @@ -596,7 +596,7 @@ def _complete_maintenance_configuration_id(cli_ctx, argument_value=None): Completes maintenance configuration id from short to full type if needed ''' - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id if argument_value and not is_valid_resource_id(argument_value): @@ -736,7 +736,7 @@ def _get_managed_db_resource_id( Gets the Managed db resource id in this Azure environment. ''' from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id return resource_id( subscription=subscription_id if subscription_id else get_subscription_id(cli_ctx), @@ -780,7 +780,7 @@ def _get_managed_dropped_db_resource_id( from urllib.parse import quote from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id return (resource_id( subscription=subscription_id if subscription_id else get_subscription_id(cli_ctx), @@ -803,7 +803,7 @@ def _get_managed_instance_resource_id( ''' from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id return (resource_id( subscription=subscription_id if subscription_id else get_subscription_id(cli_ctx), @@ -822,7 +822,7 @@ def _get_managed_instance_pool_resource_id( ''' from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id if instance_pool_name: return (resource_id( @@ -1023,7 +1023,7 @@ def _validate_elastic_pool_id( Returns the elastic_pool_id, which may have been updated and may be None. ''' - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id if elastic_pool_id and not is_valid_resource_id(elastic_pool_id): diff --git a/src/azure-cli/azure/cli/command_modules/sqlvm/_format.py b/src/azure-cli/azure/cli/command_modules/sqlvm/_format.py index a9fc74c3f70..d6e4755fba2 100644 --- a/src/azure-cli/azure/cli/command_modules/sqlvm/_format.py +++ b/src/azure-cli/azure/cli/command_modules/sqlvm/_format.py @@ -11,7 +11,7 @@ def transform_sqlvm_group_output(result): Transforms the result of SQL virtual machine group to eliminate unnecessary parameters. ''' from collections import OrderedDict - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id try: resource_group = getattr(result, 'resource_group', None) or parse_resource_id(result.id)['resource_group'] wsfc_object = format_wsfc_domain_profile(result.wsfc_domain_profile) @@ -44,7 +44,7 @@ def transform_sqlvm_output(result): Transforms the result of SQL virtual machine group to eliminate unnecessary parameters. ''' from collections import OrderedDict - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id try: resource_group = getattr(result, 'resource_group', None) or parse_resource_id(result.id)['resource_group'] # Create a dictionary with the relevant parameters @@ -94,7 +94,7 @@ def transform_aglistener_output(result): Transforms the result of Availability Group Listener to eliminate unnecessary parameters. ''' from collections import OrderedDict - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id try: resource_group = getattr(result, 'resource_group', None) or parse_resource_id(result.id)['resource_group'] # Create a dictionary with the relevant parameters diff --git a/src/azure-cli/azure/cli/command_modules/sqlvm/_validators.py b/src/azure-cli/azure/cli/command_modules/sqlvm/_validators.py index 090479c4042..164a3aa61f9 100644 --- a/src/azure-cli/azure/cli/command_modules/sqlvm/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/sqlvm/_validators.py @@ -5,7 +5,7 @@ from datetime import datetime import json -from msrestazure.tools import resource_id, is_valid_resource_id +from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.azclierror import ( InvalidArgumentValueError, RequiredArgumentMissingError, diff --git a/src/azure-cli/azure/cli/command_modules/sqlvm/custom.py b/src/azure-cli/azure/cli/command_modules/sqlvm/custom.py index 2c60850e35f..aae885bced7 100644 --- a/src/azure-cli/azure/cli/command_modules/sqlvm/custom.py +++ b/src/azure-cli/azure/cli/command_modules/sqlvm/custom.py @@ -3,7 +3,7 @@ # Licensed under the MIT License. See License.txt in the project root for license information. # -------------------------------------------------------------------------------------------- -from msrestazure.tools import is_valid_resource_id, resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from knack.prompting import prompt_pass from azure.cli.core.azclierror import ( RequiredArgumentMissingError, diff --git a/src/azure-cli/azure/cli/command_modules/storage/_validators.py b/src/azure-cli/azure/cli/command_modules/storage/_validators.py index 77d083091dd..e526d6c2a3b 100644 --- a/src/azure-cli/azure/cli/command_modules/storage/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/storage/_validators.py @@ -52,7 +52,7 @@ def _query_account_rg(cli_ctx, account_name): scf = storage_client_factory(cli_ctx) acc = next((x for x in scf.storage_accounts.list() if x.name == account_name), None) if acc: - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id return parse_resource_id(acc.id)['resource_group'], scf raise ValueError("Storage account '{}' not found.".format(account_name)) @@ -74,7 +74,7 @@ def _cancel_timer_event_handler(_, **__): # region PARAMETER VALIDATORS def parse_storage_account(cmd, namespace): """Parse storage account which can be either account name or account id""" - from msrestazure.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id if namespace.account_name and is_valid_resource_id(namespace.account_name): namespace.resource_group_name = parse_resource_id(namespace.account_name)['resource_group'] @@ -1365,7 +1365,7 @@ def process_metric_update_namespace(namespace): def validate_subnet(cmd, namespace): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id subnet = namespace.subnet @@ -1885,7 +1885,7 @@ def validate_match_condition(namespace): def validate_or_policy(cmd, namespace): - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from azure.cli.core.commands.client_factory import get_subscription_id error_elements = [] if namespace.properties is None: diff --git a/src/azure-cli/azure/cli/command_modules/storage/_validators_azure_stack.py b/src/azure-cli/azure/cli/command_modules/storage/_validators_azure_stack.py index 12bbc6e47b1..50a569bcf98 100644 --- a/src/azure-cli/azure/cli/command_modules/storage/_validators_azure_stack.py +++ b/src/azure-cli/azure/cli/command_modules/storage/_validators_azure_stack.py @@ -48,7 +48,7 @@ def _query_account_rg(cli_ctx, account_name): scf = storage_client_factory(cli_ctx) acc = next((x for x in scf.storage_accounts.list() if x.name == account_name), None) if acc: - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id return parse_resource_id(acc.id)['resource_group'], scf raise ValueError("Storage account '{}' not found.".format(account_name)) @@ -70,7 +70,7 @@ def _cancel_timer_event_handler(_, **__): # region PARAMETER VALIDATORS def parse_storage_account(cmd, namespace): """Parse storage account which can be either account name or account id""" - from msrestazure.tools import parse_resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, is_valid_resource_id if namespace.account_name and is_valid_resource_id(namespace.account_name): namespace.resource_group_name = parse_resource_id(namespace.account_name)['resource_group'] @@ -947,7 +947,7 @@ def process_metric_update_namespace(namespace): def validate_subnet(cmd, namespace): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id subnet = namespace.subnet diff --git a/src/azure-cli/azure/cli/command_modules/storage/operations/account.py b/src/azure-cli/azure/cli/command_modules/storage/operations/account.py index 1d4bc274f38..c405243b382 100644 --- a/src/azure-cli/azure/cli/command_modules/storage/operations/account.py +++ b/src/azure-cli/azure/cli/command_modules/storage/operations/account.py @@ -203,7 +203,7 @@ def create_storage_account(cmd, resource_group_name, account_name, sku=None, loc if bypass and not default_action: raise CLIError('incorrect usage: --default-action ACTION [--bypass SERVICE ...]') if subnet: - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(subnet): raise CLIError("Expected fully qualified resource ID: got '{}'".format(subnet)) VirtualNetworkRule = cmd.get_models('VirtualNetworkRule') @@ -365,7 +365,7 @@ def show_storage_account_usage_no_location(cmd): def get_storage_account_properties(cli_ctx, account_id): scf = storage_client_factory(cli_ctx) - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id result = parse_resource_id(account_id) return scf.storage_accounts.get_properties(result['resource_group'], result['name']) @@ -689,7 +689,7 @@ def add_network_rule(cmd, client, resource_group_name, account_name, action='All if not subnet and not ip_address: logger.warning('No subnet or ip address supplied.') if subnet: - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id if not is_valid_resource_id(subnet): raise CLIError("Expected fully qualified resource ID: got '{}'".format(subnet)) VirtualNetworkRule = cmd.get_models('VirtualNetworkRule') @@ -993,7 +993,7 @@ def create_or_policy(cmd, client, account_name, resource_group_name=None, proper object_replication_policy_id=policy_id, properties=or_policy) except HttpResponseError as ex: if ex.error.code == 'InvalidRequestPropertyValue' and policy_id == 'default': - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id if account_name == parse_resource_id(or_policy.source_account)['name']: raise CLIError('ValueError: Please specify --policy-id with auto-generated policy id value on ' 'destination account.') diff --git a/src/azure-cli/azure/cli/command_modules/synapse/manual/_validators.py b/src/azure-cli/azure/cli/command_modules/synapse/manual/_validators.py index 33fae5544ba..5b1448838e5 100644 --- a/src/azure-cli/azure/cli/command_modules/synapse/manual/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/synapse/manual/_validators.py @@ -6,11 +6,11 @@ # pylint: disable=line-too-long from knack.util import CLIError from knack.log import get_logger -from msrestazure.tools import is_valid_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id def validate_storage_account(namespace): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id if is_valid_resource_id(namespace.storage_account): parsed_storage = parse_resource_id(namespace.storage_account) storage_name = parsed_storage['resource_name'] @@ -21,7 +21,7 @@ def example_name_or_id_validator(cmd, namespace): # Example of a storage account name or ID validator. # See: https://github.com/Azure/azure-cli/blob/dev/doc/authoring_command_modules/authoring_commands.md#supporting-name-or-id-parameters from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id if namespace.storage_account: if not is_valid_resource_id(namespace.RESOURCE): namespace.storage_account = resource_id( diff --git a/src/azure-cli/azure/cli/command_modules/vm/_format.py b/src/azure-cli/azure/cli/command_modules/vm/_format.py index 44271508fd3..0a2692166a8 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/_format.py +++ b/src/azure-cli/azure/cli/command_modules/vm/_format.py @@ -35,7 +35,7 @@ def transform_vm(vm): def transform_vm_create_output(result): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id from collections import OrderedDict try: resource_group = getattr(result, 'resource_group', None) or parse_resource_id(result.id)['resource_group'] diff --git a/src/azure-cli/azure/cli/command_modules/vm/_image_builder.py b/src/azure-cli/azure/cli/command_modules/vm/_image_builder.py index 7eff6efc788..115be8d0546 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/_image_builder.py +++ b/src/azure-cli/azure/cli/command_modules/vm/_image_builder.py @@ -21,7 +21,7 @@ from knack.util import CLIError from knack.log import get_logger -from msrestazure.tools import is_valid_resource_id, resource_id, parse_resource_id +from azure.cli.core.arm_tools import is_valid_resource_id, resource_id, parse_resource_id from azure.core.exceptions import HttpResponseError diff --git a/src/azure-cli/azure/cli/command_modules/vm/_template_builder.py b/src/azure-cli/azure/cli/command_modules/vm/_template_builder.py index b480e20d78f..89e0febfd5b 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/_template_builder.py +++ b/src/azure-cli/azure/cli/command_modules/vm/_template_builder.py @@ -266,7 +266,7 @@ def build_vnet_resource(_, name, location, tags, vnet_prefix=None, subnet=None, def build_msi_role_assignment(vm_vmss_name, vm_vmss_resource_id, role_definition_id, role_assignment_guid, identity_scope, is_vm=True): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id result = parse_resource_id(identity_scope) if result.get('type'): # is a resource id? name = '{}/Microsoft.Authorization/{}'.format(result['name'], role_assignment_guid) diff --git a/src/azure-cli/azure/cli/command_modules/vm/_validators.py b/src/azure-cli/azure/cli/command_modules/vm/_validators.py index 98d8a288beb..3da7b3f9290 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/_validators.py +++ b/src/azure-cli/azure/cli/command_modules/vm/_validators.py @@ -34,7 +34,7 @@ def validate_asg_names_or_ids(cmd, namespace): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id resource_group = namespace.resource_group_name @@ -58,7 +58,7 @@ def validate_asg_names_or_ids(cmd, namespace): def validate_nsg_name(cmd, namespace): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id from azure.cli.core.commands.client_factory import get_subscription_id vm_id = resource_id(name=namespace.vm_name, resource_group=namespace.resource_group_name, namespace='Microsoft.Compute', type='virtualMachines', @@ -83,7 +83,7 @@ def validate_vm_name_for_monitor_metrics(cmd, namespace): def _validate_proximity_placement_group(cmd, namespace): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id if namespace.proximity_placement_group: namespace.proximity_placement_group = _get_resource_id(cmd.cli_ctx, namespace.proximity_placement_group, @@ -98,7 +98,7 @@ def _validate_proximity_placement_group(cmd, namespace): def process_vm_secret_format(cmd, namespace): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id from azure.cli.core._output import (get_output_format, set_output_format) keyvault_usage = CLIError('usage error: [--keyvault NAME --resource-group NAME | --keyvault ID]') @@ -132,7 +132,7 @@ def _get_resource_group_from_vault_name(cli_ctx, vault_name): """ from azure.cli.core.profiles import ResourceType from azure.cli.core.commands.client_factory import get_mgmt_service_client - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id client = get_mgmt_service_client(cli_ctx, ResourceType.MGMT_KEYVAULT).vaults for vault in client.list(): id_comps = parse_resource_id(vault.id) @@ -142,7 +142,7 @@ def _get_resource_group_from_vault_name(cli_ctx, vault_name): def _get_resource_id(cli_ctx, val, resource_group, resource_type, resource_namespace): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id if is_valid_resource_id(val): return val @@ -238,7 +238,7 @@ def _validate_secrets(secrets, os_type): def _parse_image_argument(cmd, namespace): """ Systematically determines what type is supplied for the --image parameter. Updates the namespace and returns the type for subsequent processing. """ - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id from azure.core.exceptions import HttpResponseError import re @@ -374,7 +374,7 @@ def _validate_location(cmd, namespace, zone_info, size_info): # pylint: disable=too-many-branches, too-many-statements, too-many-locals def _validate_vm_create_storage_profile(cmd, namespace, for_scale_set=False): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id _validate_vm_vmss_create_ephemeral_placement(namespace) @@ -649,7 +649,7 @@ def _validate_vm_create_storage_profile(cmd, namespace, for_scale_set=False): def _validate_vm_create_storage_account(cmd, namespace): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id if namespace.storage_account: storage_id = parse_resource_id(namespace.storage_account) rg = storage_id.get('resource_group', namespace.resource_group_name) @@ -689,7 +689,7 @@ def _validate_vm_create_storage_account(cmd, namespace): def _validate_vm_create_availability_set(cmd, namespace): - from msrestazure.tools import parse_resource_id, resource_id + from azure.cli.core.arm_tools import parse_resource_id, resource_id from azure.cli.core.commands.client_factory import get_subscription_id if namespace.availability_set: as_id = parse_resource_id(namespace.availability_set) @@ -709,7 +709,7 @@ def _validate_vm_create_availability_set(cmd, namespace): def _validate_vm_create_vmss(cmd, namespace): - from msrestazure.tools import parse_resource_id, resource_id + from azure.cli.core.arm_tools import parse_resource_id, resource_id from azure.cli.core.commands.client_factory import get_subscription_id if namespace.vmss: as_id = parse_resource_id(namespace.vmss) @@ -745,7 +745,7 @@ def _validate_vm_create_dedicated_host(cmd, namespace): :param namespace: :return: """ - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id if namespace.dedicated_host and namespace.dedicated_host_group: @@ -763,7 +763,7 @@ def _validate_vm_create_dedicated_host(cmd, namespace): def _validate_vm_vmss_create_vnet(cmd, namespace, for_scale_set=False): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id vnet = namespace.vnet_name subnet = namespace.subnet rg = namespace.resource_group_name @@ -1075,7 +1075,7 @@ def validate_delete_option(string): def _validate_vm_create_nics(cmd, namespace): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id from azure.cli.core.commands.client_factory import get_subscription_id nic_ids = namespace.nics delete_option = validate_delete_options(nic_ids, getattr(namespace, 'nic_delete_option', None)) @@ -1457,7 +1457,7 @@ def _validate_generation_version_and_trusted_launch(cmd, namespace): # create vm with os disk if hasattr(namespace, 'attach_os_disk') and namespace.attach_os_disk is not None: - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id if urlparse(namespace.attach_os_disk).scheme and "://" in namespace.attach_os_disk: # vhd does not support trusted launch return @@ -1597,7 +1597,7 @@ def _validate_vmss_single_placement_group(namespace): def _validate_vmss_create_load_balancer_or_app_gateway(cmd, namespace): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id from azure.cli.core.profiles import ResourceType from azure.core.exceptions import HttpResponseError std_lb_is_available = cmd.supported_api_version(min_api='2017-08-01', resource_type=ResourceType.MGMT_NETWORK) @@ -2064,7 +2064,7 @@ def process_snapshot_create_namespace(cmd, namespace): def process_image_create_namespace(cmd, namespace): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id validate_tags(namespace) validate_edge_zone(cmd, namespace) source_from_vm = False @@ -2407,7 +2407,7 @@ def _disk_encryption_set_format(cmd, namespace, name): :param name: string :return: ID """ - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id if name is not None and not is_valid_resource_id(name): name = resource_id( @@ -2529,7 +2529,7 @@ def _validate_vmss_automatic_repairs(cmd, namespace): # pylint: disable=unused- def _validate_vmss_create_host_group(cmd, namespace): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id if namespace.host_group: if not is_valid_resource_id(namespace.host_group): @@ -2593,7 +2593,7 @@ def _validate_capacity_reservation_group(cmd, namespace): if namespace.capacity_reservation_group and namespace.capacity_reservation_group != 'None': - from msrestazure.tools import is_valid_resource_id, resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, resource_id from azure.cli.core.commands.client_factory import get_subscription_id if not is_valid_resource_id(namespace.capacity_reservation_group): namespace.capacity_reservation_group = resource_id( diff --git a/src/azure-cli/azure/cli/command_modules/vm/_vm_utils.py b/src/azure-cli/azure/cli/command_modules/vm/_vm_utils.py index cb8a2f9c194..3fdc3cced21 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/_vm_utils.py +++ b/src/azure-cli/azure/cli/command_modules/vm/_vm_utils.py @@ -80,7 +80,7 @@ def check_existence(cli_ctx, value, resource_group, provider_namespace, resource # check for name or ID and set the type flags from azure.cli.core.commands.client_factory import get_mgmt_service_client from azure.core.exceptions import HttpResponseError - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id from azure.cli.core.profiles import ResourceType id_parts = parse_resource_id(value) resource_client = get_mgmt_service_client(cli_ctx, ResourceType.MGMT_RESOURCE_RESOURCES, @@ -172,7 +172,7 @@ def normalize_disk_info(image_data_disks=None, data_disk_delete_option=None, source_snapshots_or_disks=None, source_snapshots_or_disks_size_gb=None, source_disk_restore_point=None, source_disk_restore_point_size_gb=None): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id from ._validators import validate_delete_options is_lv_size = re.search('_L[0-9]+s', size, re.I) # we should return a dictionary with info like below diff --git a/src/azure-cli/azure/cli/command_modules/vm/custom.py b/src/azure-cli/azure/cli/command_modules/vm/custom.py index 0a1722852ea..7294c91fca8 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/custom.py +++ b/src/azure-cli/azure/cli/command_modules/vm/custom.py @@ -306,7 +306,7 @@ def _trim_away_build_number(version): def _parse_rg_name(strid): '''From an ID, extract the contained (resource group, name) tuple.''' - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id parts = parse_resource_id(strid) return (parts['resource_group'], parts['name']) @@ -328,7 +328,7 @@ def _show_missing_access_warning(resource_group, name, command): def _parse_aux_subscriptions(resource_id): - from msrestazure.tools import is_valid_resource_id, parse_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id, parse_resource_id if is_valid_resource_id(resource_id): res = parse_resource_id(resource_id) return [res['subscription']] @@ -360,7 +360,7 @@ def create_managed_disk(cmd, resource_group_name, disk_name, location=None, # p upload_type=None, secure_vm_disk_encryption_set=None, performance_plus=None, optimized_for_frequent_attach=None): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id Disk, CreationData, DiskCreateOption, Encryption = cmd.get_models( @@ -408,7 +408,7 @@ def create_managed_disk(cmd, resource_group_name, disk_name, location=None, # p else: # error raise CLIError('usage error: --image-reference should be ID or URN (publisher:offer:sku:version).') else: - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id terms = parse_resource_id(image_reference) disk_publisher, disk_offer, disk_sku, disk_version = \ terms['child_name_1'], terms['child_name_3'], terms['child_name_4'], terms['child_name_5'] @@ -548,7 +548,7 @@ def update_managed_disk(cmd, resource_group_name, instance, size_gb=None, sku=No network_access_policy=None, disk_access=None, max_shares=None, disk_iops_read_only=None, disk_mbps_read_only=None, enable_bursting=None, public_network_access=None, accelerated_network=None, architecture=None, data_access_auth_mode=None): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id if size_gb is not None: @@ -677,7 +677,7 @@ def create_snapshot(cmd, resource_group_name, snapshot_name, location=None, size encryption_type=None, network_access_policy=None, disk_access=None, edge_zone=None, public_network_access=None, accelerated_network=None, architecture=None, elastic_san_resource_id=None, bandwidth_copy_speed=None): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id Snapshot, CreationData, DiskCreateOption, Encryption = cmd.get_models( @@ -759,7 +759,7 @@ def grant_snapshot_access(cmd, resource_group_name, snapshot_name, duration_in_s def update_snapshot(cmd, resource_group_name, instance, sku=None, disk_encryption_set=None, encryption_type=None, network_access_policy=None, disk_access=None, public_network_access=None, accelerated_network=None, architecture=None): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id if sku is not None: @@ -913,7 +913,7 @@ def create_vm(cmd, vm_name, resource_group_name, image=None, size='Standard_DS1_ build_vm_linux_log_analytics_workspace_agent, build_vm_windows_log_analytics_workspace_agent) from azure.cli.command_modules.vm._vm_utils import ArmTemplateBuilder20190401 - from msrestazure.tools import resource_id, is_valid_resource_id, parse_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id, parse_resource_id # In the latest profile, the default public IP will be expected to be changed from Basic to Standard, # and Basic option will be removed. @@ -1241,7 +1241,7 @@ def create_vm(cmd, vm_name, resource_group_name, image=None, size='Standard_DS1_ def auto_shutdown_vm(cmd, resource_group_name, vm_name, off=None, email=None, webhook=None, time=None, location=None): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id from azure.mgmt.devtestlabs.models import Schedule from azure.cli.core.commands.client_factory import get_subscription_id subscription_id = get_subscription_id(cmd.cli_ctx) @@ -1300,7 +1300,7 @@ def get_vm_to_update(cmd, resource_group_name, vm_name): def get_vm_details(cmd, resource_group_name, vm_name, include_user_data=False): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id NicShow = import_aaz_by_profile(cmd.cli_ctx.cloud.profile, "network.nic").Show PublicIPShow = import_aaz_by_profile(cmd.cli_ctx.cloud.profile, "network.public_ip").Show @@ -1364,7 +1364,7 @@ def list_skus(cmd, location=None, size=None, zone=None, show_all=None, resource_ # pylint: disable=redefined-builtin def list_vm(cmd, resource_group_name=None, show_details=False, vmss=None): - from msrestazure.tools import resource_id, is_valid_resource_id, parse_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id, parse_resource_id from azure.cli.core.commands.client_factory import get_subscription_id ccf = _compute_client_factory(cmd.cli_ctx) if vmss is not None: @@ -1453,7 +1453,7 @@ def list_vm_ip_addresses(cmd, resource_group_name=None, vm_name=None): def open_vm_port(cmd, resource_group_name, vm_name, port, priority=900, network_security_group_name=None, apply_to_subnet=False): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id _nic = import_aaz_by_profile(cmd.cli_ctx.cloud.profile, "network.nic") NicShow, NicUpdate = _nic.Show, _nic.Update _subnet = import_aaz_by_profile(cmd.cli_ctx.cloud.profile, "network.vnet.subnet") @@ -1618,7 +1618,7 @@ def update_vm(cmd, resource_group_name, vm_name, os_disk=None, disk_caching=None dedicated_host=None, dedicated_host_group=None, size=None, ephemeral_os_disk_placement=None, enable_hibernation=None, v_cpus_available=None, v_cpus_per_core=None, disk_controller_type=None, security_type=None, enable_proxy_agent=None, proxy_agent_mode=None, **kwargs): - from msrestazure.tools import parse_resource_id, resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import parse_resource_id, resource_id, is_valid_resource_id from ._vm_utils import update_write_accelerator_settings, update_disk_caching SecurityProfile, UefiSettings = cmd.get_models('SecurityProfile', 'UefiSettings') vm = kwargs['parameters'] @@ -2038,7 +2038,7 @@ def show_default_diagnostics_configuration(is_windows_os=False): def attach_managed_data_disk(cmd, resource_group_name, vm_name, disk=None, ids=None, disks=None, new=False, sku=None, size_gb=1023, lun=None, caching=None, enable_write_accelerator=False): '''attach multiple managed disks''' - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id vm = get_vm_to_update(cmd, resource_group_name, vm_name) DataDisk, ManagedDiskParameters, DiskCreateOption = cmd.get_models( 'DataDisk', 'ManagedDiskParameters', 'DiskCreateOptionTypes') @@ -2486,7 +2486,7 @@ def get_terms(cmd, urn=None, publisher=None, offer=None, plan=None): # region VirtualMachines NetworkInterfaces (NICs) def show_vm_nic(cmd, resource_group_name, vm_name, nic): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id NicShow = import_aaz_by_profile(cmd.cli_ctx.cloud.profile, "network.nic").Show @@ -2870,7 +2870,7 @@ def get_vm_format_secret(cmd, secrets, certificate_store=None, keyvault=None, re def add_vm_secret(cmd, resource_group_name, vm_name, keyvault, certificate, certificate_store=None): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id from ._vm_utils import create_data_plane_keyvault_certificate_client, get_key_vault_base_url VaultSecretGroup, SubResource, VaultCertificate = cmd.get_models( 'VaultSecretGroup', 'SubResource', 'VaultCertificate') @@ -3206,7 +3206,7 @@ def create_vmss(cmd, vmss_name, resource_group_name, image=None, uniform_str = 'Uniform' flexible_str = 'Flexible' if orchestration_mode: - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id if disk_info: storage_sku = disk_info['os'].get('storageAccountType') @@ -3737,7 +3737,7 @@ def get_vmss_instance_view(cmd, resource_group_name, vm_scale_set_name, instance def list_vmss_instance_connection_info(cmd, resource_group_name, vm_scale_set_name): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id LBShow = import_aaz_by_profile(cmd.cli_ctx.cloud.profile, "network.lb").Show PublicIPAddress = import_aaz_by_profile(cmd.cli_ctx.cloud.profile, "network.public_ip").Show @@ -4838,7 +4838,7 @@ def create_image_version(cmd, resource_group_name, gallery_name, gallery_image_n replication_mode=None, target_region_cvm_encryption=None, virtual_machine=None, image_version=None, target_zone_encryption=None, target_edge_zones=None, allow_replicated_location_deletion=None): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id ImageVersionPublishingProfile, GalleryArtifactSource, ManagedArtifact, ImageVersion, TargetRegion = cmd.get_models( @@ -5137,7 +5137,7 @@ def _get_log_analytics_client(cmd): def _prepare_workspace(cmd, resource_group_name, workspace): - from msrestazure.tools import is_valid_resource_id + from azure.cli.core.arm_tools import is_valid_resource_id from azure.core.exceptions import HttpResponseError @@ -5242,7 +5242,7 @@ def create_disk_encryption_set( cmd, client, resource_group_name, disk_encryption_set_name, key_url, source_vault=None, encryption_type=None, location=None, tags=None, no_wait=False, enable_auto_key_rotation=None, federated_client_id=None, mi_system_assigned=None, mi_user_assigned=None): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id DiskEncryptionSet, EncryptionSetIdentity, KeyForDiskEncryptionSet, SourceVault = cmd.get_models( 'DiskEncryptionSet', 'EncryptionSetIdentity', 'KeyForDiskEncryptionSet', 'SourceVault') @@ -5275,7 +5275,7 @@ def create_disk_encryption_set( def update_disk_encryption_set(cmd, instance, client, resource_group_name, key_url=None, source_vault=None, enable_auto_key_rotation=None, federated_client_id=None): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id from azure.cli.core.commands.client_factory import get_subscription_id if key_url: instance.active_key.key_url = key_url diff --git a/src/azure-cli/azure/cli/command_modules/vm/disk_encryption.py b/src/azure-cli/azure/cli/command_modules/vm/disk_encryption.py index 4f57d799408..4df9127788d 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/disk_encryption.py +++ b/src/azure-cli/azure/cli/command_modules/vm/disk_encryption.py @@ -71,7 +71,7 @@ def encrypt_vm(cmd, resource_group_name, vm_name, # pylint: disable=too-many-lo volume_type=None, encrypt_format_all=False, force=False): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id from knack.util import CLIError # pylint: disable=no-member @@ -390,7 +390,7 @@ def encrypt_vmss(cmd, resource_group_name, vmss_name, # pylint: disable=too-man key_encryption_algorithm='RSA-OAEP', volume_type=None, force=False): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id # pylint: disable=no-member UpgradeMode, VirtualMachineScaleSetExtension, VirtualMachineScaleSetExtensionProfile = cmd.get_models( @@ -547,7 +547,7 @@ def _report_client_side_validation_error(msg): from azure.cli.core.commands.client_factory import get_mgmt_service_client from azure.cli.core.profiles import ResourceType - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id client = get_mgmt_service_client(cli_ctx, ResourceType.MGMT_KEYVAULT).vaults disk_vault_resource_info = parse_resource_id(disk_vault_id) diff --git a/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2018_03_01/test_vm_commands.py b/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2018_03_01/test_vm_commands.py index fa8844d9ac5..a863bc3b2ae 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2018_03_01/test_vm_commands.py +++ b/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2018_03_01/test_vm_commands.py @@ -1136,7 +1136,7 @@ class VMCreateExistingIdsOptions(ScenarioTest): @StorageAccountPreparer() def test_vm_create_existing_ids_options(self, resource_group, storage_account): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id subscription_id = self.get_subscription_id() @@ -1700,7 +1700,7 @@ class VMSSCreateExistingIdsOptions(ScenarioTest): @ResourceGroupPreparer(name_prefix='cli_test_vmss_create_existing_ids') def test_vmss_create_existing_ids_options(self, resource_group): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id subscription_id = self.get_subscription_id() self.kwargs.update({ diff --git a/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2019_03_01/test_vm_commands.py b/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2019_03_01/test_vm_commands.py index eac7c1030ee..7cf0b02dde3 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2019_03_01/test_vm_commands.py +++ b/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2019_03_01/test_vm_commands.py @@ -1329,7 +1329,7 @@ class VMCreateExistingIdsOptions(ScenarioTest): @StorageAccountPreparer() def test_vm_create_existing_ids_options(self, resource_group, storage_account): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id subscription_id = self.get_subscription_id() @@ -1933,7 +1933,7 @@ class VMSSCreateExistingIdsOptions(ScenarioTest): @ResourceGroupPreparer(name_prefix='cli_test_vmss_create_existing_ids') def test_vmss_create_existing_ids_options(self, resource_group): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id subscription_id = self.get_subscription_id() self.kwargs.update({ diff --git a/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2020_09_01/test_vm_commands.py b/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2020_09_01/test_vm_commands.py index c7b964267e5..5fa4e29f1ca 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2020_09_01/test_vm_commands.py +++ b/src/azure-cli/azure/cli/command_modules/vm/tests/hybrid_2020_09_01/test_vm_commands.py @@ -894,7 +894,7 @@ class VMCreateExistingIdsOptions(ScenarioTest): @StorageAccountPreparer() def test_vm_create_existing_ids_options(self, resource_group, storage_account): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id subscription_id = self.get_subscription_id() @@ -1344,7 +1344,7 @@ class VMSSCreateExistingIdsOptions(ScenarioTest): @ResourceGroupPreparer(name_prefix='cli_test_vmss_create_existing_ids') def test_vmss_create_existing_ids_options(self, resource_group): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id subscription_id = self.get_subscription_id() self.kwargs.update({ @@ -2208,7 +2208,7 @@ def test_ppg_update(self, resource_group): # # however, the CLI does not replace resource group values in payloads in the recordings. def _assert_ids_equal(self, id_1, id_2, rg_prefix=None): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id id_1, id_2, rg_prefix = id_1.lower(), id_2.lower(), rg_prefix.lower() if rg_prefix else rg_prefix diff --git a/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_image_builder_commands.py b/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_image_builder_commands.py index 93e5ec8972a..b15cafb5802 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_image_builder_commands.py +++ b/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_image_builder_commands.py @@ -8,7 +8,7 @@ from azure.core.exceptions import HttpResponseError from knack.util import CLIError -from msrestazure.tools import parse_resource_id +from azure.cli.core.arm_tools import parse_resource_id from azure.cli.testsdk import ScenarioTest, ResourceGroupPreparer, StorageAccountPreparer from azure.cli.testsdk.scenario_tests import AllowLargeResponse diff --git a/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_vm_commands.py b/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_vm_commands.py index d38531c7462..9e078a73280 100644 --- a/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_vm_commands.py +++ b/src/azure-cli/azure/cli/command_modules/vm/tests/latest/test_vm_commands.py @@ -3314,7 +3314,7 @@ class VMCreateExistingIdsOptions(ScenarioTest): @StorageAccountPreparer() def test_vm_create_existing_ids_options(self, resource_group, storage_account): from azure.cli.core.commands.client_factory import get_subscription_id - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id subscription_id = self.get_subscription_id() @@ -5114,7 +5114,7 @@ class VMSSCreateExistingIdsOptions(ScenarioTest): @ResourceGroupPreparer(name_prefix='cli_test_vmss_create_existing_ids') def test_vmss_create_existing_ids_options(self, resource_group): - from msrestazure.tools import resource_id, is_valid_resource_id + from azure.cli.core.arm_tools import resource_id, is_valid_resource_id subscription_id = self.get_subscription_id() self.kwargs.update({ @@ -6896,7 +6896,7 @@ def test_gallery_image_version_vhd(self, resource_group): @AllowLargeResponse() @ResourceGroupPreparer(name_prefix='cli_test_image_version_create_os_vhd') def test_image_version_create_os_vhd(self, resource_group): - from msrestazure.tools import resource_id + from azure.cli.core.arm_tools import resource_id self.kwargs.update({ 'vm': 'myvm', @@ -7963,7 +7963,7 @@ def test_ppg_update(self, resource_group): # # however, the CLI does not replace resource group values in payloads in the recordings. def _assert_ids_equal(self, id_1, id_2, rg_prefix=None): - from msrestazure.tools import parse_resource_id + from azure.cli.core.arm_tools import parse_resource_id id_1, id_2, rg_prefix = id_1.lower(), id_2.lower(), rg_prefix.lower() if rg_prefix else rg_prefix