本文整理汇总了Python中msrestazure.tools.is_valid_resource_id函数的典型用法代码示例。如果您正苦于以下问题:Python is_valid_resource_id函数的具体用法?Python is_valid_resource_id怎么用?Python is_valid_resource_id使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了is_valid_resource_id函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: validate_diagnostic_settings
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
from knack.util import CLIError
resource_group_error = "--resource-group is required when name is provided for storage account or workspace or " \
"service bus namespace and rule. "
get_target_resource_validator('resource_uri', required=True, preserve_resource_group_parameter=True)(cmd, namespace)
if namespace.storage_account and not is_valid_resource_id(namespace.storage_account):
if namespace.resource_group_name is None:
raise CLIError(resource_group_error)
namespace.storage_account = resource_id(subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='microsoft.Storage',
type='storageAccounts',
name=namespace.storage_account)
if namespace.workspace and not is_valid_resource_id(namespace.workspace):
if namespace.resource_group_name is None:
raise CLIError(resource_group_error)
namespace.workspace = resource_id(subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='microsoft.OperationalInsights',
type='workspaces',
name=namespace.workspace)
if not namespace.storage_account and not namespace.workspace and not namespace.event_hub:
raise CLIError(
'One of the following parameters is expected: --storage-account, --event-hub-name, or --workspace.')
try:
del namespace.resource_group_name
except AttributeError:
pass
开发者ID:derekbekoe,项目名称:azure-cli,代码行数:35,代码来源:validators.py
示例2: process_nw_packet_capture_create_namespace
def process_nw_packet_capture_create_namespace(cmd, namespace):
from msrestazure.tools import is_valid_resource_id, resource_id
get_network_watcher_from_vm(cmd, namespace)
storage_usage = CLIError('usage error: --storage-account NAME_OR_ID [--storage-path '
'PATH] [--file-path PATH] | --file-path PATH')
if not namespace.storage_account and not namespace.file_path:
raise storage_usage
if namespace.storage_path and not namespace.storage_account:
raise storage_usage
if not is_valid_resource_id(namespace.vm):
namespace.vm = resource_id(
subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='Microsoft.Compute',
type='virtualMachines',
name=namespace.vm)
if namespace.storage_account and not is_valid_resource_id(namespace.storage_account):
namespace.storage_account = resource_id(
subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='Microsoft.Storage',
type='storageAccounts',
name=namespace.storage_account)
if namespace.file_path:
file_path = namespace.file_path
if not file_path.endswith('.cap'):
raise CLIError("usage error: --file-path PATH must end with the '*.cap' extension")
file_path = file_path.replace('/', '\\')
namespace.file_path = file_path
开发者ID:jiayexie,项目名称:azure-cli,代码行数:34,代码来源:_validators.py
示例3: test_update_artifacts
def test_update_artifacts(self):
result = _update_artifacts([], self.lab_resource_id)
assert result == []
result = _update_artifacts([self.jdk_artifact], self.lab_resource_id)
for artifact in result:
assert is_valid_resource_id(artifact.get('artifact_id'))
self.assertEqual('{}{}'.format(self.lab_resource_id,
self.jdk_artifact.get('artifact_id')),
artifact.get('artifact_id'))
result = _update_artifacts([self.jdk_artifact, self.apt_get_artifact],
self.lab_resource_id)
for artifact in result:
assert is_valid_resource_id(artifact.get('artifact_id'))
result = _update_artifacts([self.full_artifact, self.apt_get_artifact],
self.lab_resource_id)
for artifact in result:
assert is_valid_resource_id(artifact.get('artifact_id'))
self.assertEqual(artifact.get('artifact_id'), self.full_artifact.get('artifact_id'))
with self.assertRaises(CLIError):
_update_artifacts({}, self.lab_resource_id)
invalid_artifact = self.jdk_artifact
del invalid_artifact['artifact_id']
with self.assertRaises(CLIError):
_update_artifacts([invalid_artifact], self.lab_resource_id)
开发者ID:derekbekoe,项目名称:azure-cli,代码行数:29,代码来源:test_lab_validators.py
示例4: _validator
def _validator(cmd, namespace):
from msrestazure.tools import is_valid_resource_id
from knack.util import CLIError
name_or_id = getattr(namespace, dest)
rg = namespace.resource_group_name
res_ns = namespace.namespace
parent = namespace.parent
res_type = namespace.resource_type
usage_error = CLIError('usage error: --{0} ID | --{0} NAME --resource-group NAME '
'--{0}-type TYPE [--{0}-parent PARENT] '
'[--{0}-namespace NAMESPACE]'.format(alias))
if not name_or_id and required:
raise usage_error
elif name_or_id:
if is_valid_resource_id(name_or_id) and any((res_ns, parent, res_type)):
raise usage_error
elif not is_valid_resource_id(name_or_id):
from azure.cli.core.commands.client_factory import get_subscription_id
if res_type and '/' in res_type:
res_ns = res_ns or res_type.rsplit('/', 1)[0]
res_type = res_type.rsplit('/', 1)[1]
if not all((rg, res_ns, res_type, name_or_id)):
raise usage_error
setattr(namespace, dest,
'/subscriptions/{}/resourceGroups/{}/providers/{}/{}{}/{}'.format(
get_subscription_id(cmd.cli_ctx), rg, res_ns, parent + '/' if parent else '',
res_type, name_or_id))
del namespace.namespace
del namespace.parent
del namespace.resource_type
if not preserve_resource_group_parameter:
del namespace.resource_group_name
开发者ID:derekbekoe,项目名称:azure-cli,代码行数:35,代码来源:validators.py
示例5: process_nw_test_connectivity_namespace
def process_nw_test_connectivity_namespace(cmd, namespace):
from msrestazure.tools import is_valid_resource_id, resource_id, parse_resource_id
compute_client = get_mgmt_service_client(cmd.cli_ctx, ResourceType.MGMT_COMPUTE).virtual_machines
vm_name = parse_resource_id(namespace.source_resource)['name']
rg = namespace.resource_group_name or parse_resource_id(namespace.source_resource).get('resource_group', None)
if not rg:
raise CLIError('usage error: --source-resource ID | --source-resource NAME --resource-group NAME')
vm = compute_client.get(rg, vm_name)
namespace.location = vm.location # pylint: disable=no-member
get_network_watcher_from_location(remove=True)(cmd, namespace)
if namespace.source_resource and not is_valid_resource_id(namespace.source_resource):
namespace.source_resource = resource_id(
subscription=get_subscription_id(cmd.cli_ctx),
resource_group=rg,
namespace='Microsoft.Compute',
type='virtualMachines',
name=namespace.source_resource)
if namespace.dest_resource and not is_valid_resource_id(namespace.dest_resource):
namespace.dest_resource = resource_id(
subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='Microsoft.Compute',
type='virtualMachines',
name=namespace.dest_resource)
开发者ID:jiayexie,项目名称:azure-cli,代码行数:27,代码来源:_validators.py
示例6: validate_diagnostic_settings
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 knack.util import CLIError
get_target_resource_validator('resource_uri', required=True, preserve_resource_group_parameter=True)(cmd, namespace)
if not namespace.resource_group_name:
namespace.resource_group_name = parse_resource_id(namespace.resource_uri)['resource_group']
if namespace.storage_account and not is_valid_resource_id(namespace.storage_account):
namespace.storage_account = resource_id(subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='microsoft.Storage',
type='storageAccounts',
name=namespace.storage_account)
if namespace.workspace and not is_valid_resource_id(namespace.workspace):
namespace.workspace = resource_id(subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='microsoft.OperationalInsights',
type='workspaces',
name=namespace.workspace)
if namespace.event_hub and is_valid_resource_id(namespace.event_hub):
namespace.event_hub = parse_resource_id(namespace.event_hub)['name']
if namespace.event_hub_rule:
if not is_valid_resource_id(namespace.event_hub_rule):
if not namespace.event_hub:
raise CLIError('usage error: --event-hub-rule ID | --event-hub-rule NAME --event-hub NAME')
# use value from --event-hub if the rule is a name
namespace.event_hub_rule = resource_id(
subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='Microsoft.EventHub',
type='namespaces',
name=namespace.event_hub,
child_type_1='AuthorizationRules',
child_name_1=namespace.event_hub_rule)
elif not namespace.event_hub:
# extract the event hub name from `--event-hub-rule` if provided as an ID
namespace.event_hub = parse_resource_id(namespace.event_hub_rule)['name']
if not any([namespace.storage_account, namespace.workspace, namespace.event_hub]):
raise CLIError(
'usage error - expected one or more: --storage-account NAME_OR_ID | --workspace NAME_OR_ID '
'| --event-hub NAME_OR_ID | --event-hub-rule ID')
try:
del namespace.resource_group_name
except AttributeError:
pass
开发者ID:sptramer,项目名称:azure-cli,代码行数:52,代码来源:validators.py
示例7: process_ag_listener_create_namespace
def process_ag_listener_create_namespace(cmd, namespace): # pylint: disable=unused-argument
from msrestazure.tools import is_valid_resource_id
if namespace.frontend_ip and not is_valid_resource_id(namespace.frontend_ip):
namespace.frontend_ip = _generate_ag_subproperty_id(
cmd.cli_ctx, namespace, 'frontendIpConfigurations', namespace.frontend_ip)
if namespace.frontend_port and not is_valid_resource_id(namespace.frontend_port):
namespace.frontend_port = _generate_ag_subproperty_id(
cmd.cli_ctx, namespace, 'frontendPorts', namespace.frontend_port)
if namespace.ssl_cert and not is_valid_resource_id(namespace.ssl_cert):
namespace.ssl_cert = _generate_ag_subproperty_id(
cmd.cli_ctx, namespace, 'sslCertificates', namespace.ssl_cert)
开发者ID:jiayexie,项目名称:azure-cli,代码行数:13,代码来源:_validators.py
示例8: process_ag_url_path_map_rule_create_namespace
def process_ag_url_path_map_rule_create_namespace(cmd, namespace): # pylint: disable=unused-argument
from msrestazure.tools import is_valid_resource_id
if namespace.address_pool and not is_valid_resource_id(namespace.address_pool):
namespace.address_pool = _generate_ag_subproperty_id(
cmd.cli_ctx, namespace, 'backendAddressPools', namespace.address_pool)
if namespace.http_settings and not is_valid_resource_id(namespace.http_settings):
namespace.http_settings = _generate_ag_subproperty_id(
cmd.cli_ctx, namespace, 'backendHttpSettingsCollection', namespace.http_settings)
if namespace.redirect_config and not is_valid_resource_id(
namespace.redirect_config):
namespace.redirect_config = _generate_ag_subproperty_id(
cmd.cli_ctx, namespace, 'redirectConfigurations', namespace.redirect_config)
开发者ID:jiayexie,项目名称:azure-cli,代码行数:14,代码来源:_validators.py
示例9: validate_resource
def validate_resource(cmd, namespace): # pylint: disable=unused-argument
if namespace.resource:
if not is_valid_resource_id(namespace.resource):
if not namespace.namespace:
raise CLIError('--namespace is required if --resource is not a resource ID.')
if not namespace.resource_type:
raise CLIError('--resource-type is required if --resource is not a resource ID.')
开发者ID:jiayexie,项目名称:azure-cli,代码行数:7,代码来源:_validators.py
示例10: _validate_name_or_id
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 msrestazure.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)
value_supplied_was_id = True
elif has_parent:
resource_id_parts = dict(
name=parent_value,
resource_group=resource_group_name,
namespace=parent_type.split('/')[0],
type=parent_type.split('/')[1],
subscription=get_subscription_id(cli_ctx),
child_name_1=property_value,
child_type_1=property_type)
value_supplied_was_id = False
else:
resource_id_parts = dict(
name=property_value,
resource_group=resource_group_name,
namespace=property_type.split('/')[0],
type=property_type.split('/')[1],
subscription=get_subscription_id(cli_ctx))
value_supplied_was_id = False
return (resource_id_parts, value_supplied_was_id)
开发者ID:derekbekoe,项目名称:azure-cli,代码行数:27,代码来源:template_create.py
示例11: parse_domain_name
def parse_domain_name(domain):
from msrestazure.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)
domain_name = parsed_domain_id['resource_name']
return domain_name
开发者ID:yugangw-msft,项目名称:azure-cli,代码行数:7,代码来源:util.py
示例12: get_storage_account_endpoint
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
host = None
if is_valid_resource_id(storage_account):
parsed_storage_account = parse_resource_id(storage_account)
resource_group_name = parsed_storage_account['resource_group']
storage_account_name = parsed_storage_account['resource_name']
storage_client = cf_storage(cmd.cli_ctx)
storage_account = storage_client.storage_accounts.get_properties(
resource_group_name=resource_group_name,
account_name=storage_account_name)
def extract_endpoint(storage_account, is_wasb):
if not storage_account:
return None
return storage_account.primary_endpoints.dfs if not is_wasb else storage_account.primary_endpoints.blob
def extract_host(uri):
import re
return uri and re.search('//(.*)/', uri).groups()[0]
host = extract_host(extract_endpoint(storage_account, is_wasb))
return host
开发者ID:yugangw-msft,项目名称:azure-cli,代码行数:25,代码来源:util.py
示例13: simple_validator
def simple_validator(cmd, namespace):
if namespace.virtual_network_name is None and namespace.subnet is None:
return
if namespace.subnet == '':
return
usage_error = ValueError('incorrect usage: ( --subnet ID | --subnet NAME --vnet-name NAME)')
# error if vnet-name is provided without subnet
if namespace.virtual_network_name and not namespace.subnet:
raise usage_error
# determine if subnet is name or ID
is_id = is_valid_resource_id(namespace.subnet)
# error if vnet-name is provided along with a subnet ID
if is_id and namespace.virtual_network_name:
raise usage_error
elif not is_id and not namespace.virtual_network_name:
raise usage_error
if not is_id:
namespace.subnet = resource_id(
subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='Microsoft.Network',
type='virtualNetworks',
name=namespace.virtual_network_name,
child_type_1='subnets',
child_name_1=namespace.subnet)
开发者ID:jiayexie,项目名称:azure-cli,代码行数:28,代码来源:_validators.py
示例14: _replica_create
def _replica_create(cmd, client, resource_group_name, server_name, source_server, no_wait=False, **kwargs):
provider = 'Microsoft.DBForMySQL' if isinstance(client, MySqlServersOperations) else 'Microsoft.DBforPostgreSQL'
# set source server id
if not is_valid_resource_id(source_server):
if len(source_server.split('/')) == 1:
source_server = resource_id(subscription=get_subscription_id(cmd.cli_ctx),
resource_group=resource_group_name,
namespace=provider,
type='servers',
name=source_server)
else:
raise CLIError('The provided source-server {} is invalid.'.format(source_server))
source_server_id_parts = parse_resource_id(source_server)
try:
source_server_object = client.get(source_server_id_parts['resource_group'], source_server_id_parts['name'])
except CloudError as e:
raise CLIError('Unable to get source server: {}.'.format(str(e)))
parameters = None
if provider == 'Microsoft.DBForMySQL':
from azure.mgmt.rdbms import mysql
parameters = mysql.models.ServerForCreate(
sku=mysql.models.Sku(name=source_server_object.sku.name),
properties=mysql.models.ServerPropertiesForReplica(source_server_id=source_server),
location=source_server_object.location)
return sdk_no_wait(no_wait, client.create, resource_group_name, server_name, parameters)
开发者ID:yugangw-msft,项目名称:azure-cli,代码行数:28,代码来源:custom.py
示例15: _use_custom_image
def _use_custom_image(cli_ctx, namespace):
""" Retrieve custom image from lab and update namespace """
from msrestazure.tools import is_valid_resource_id
if is_valid_resource_id(namespace.image):
namespace.custom_image_id = namespace.image
else:
custom_image_operation = get_devtestlabs_management_client(cli_ctx, None).custom_images
odata_filter = ODATA_NAME_FILTER.format(namespace.image)
custom_images = list(custom_image_operation.list(namespace.resource_group_name,
namespace.lab_name,
filter=odata_filter))
if not custom_images:
err = "Unable to find custom image name '{}' in the '{}' lab.".format(namespace.image, namespace.lab_name)
raise CLIError(err)
elif len(custom_images) > 1:
err = "Found more than 1 image with name '{}'. Please pick one from {}"
raise CLIError(err.format(namespace.image, [x.name for x in custom_images]))
else:
namespace.custom_image_id = custom_images[0].id
if custom_images[0].vm is not None:
if custom_images[0].vm.windows_os_info is not None:
os_type = "Windows"
else:
os_type = "Linux"
elif custom_images[0].vhd is not None:
os_type = custom_images[0].vhd.os_type
else:
raise CLIError("OS type cannot be inferred from the custom image {}".format(custom_images[0].id))
namespace.os_type = os_type
开发者ID:derekbekoe,项目名称:azure-cli,代码行数:31,代码来源:validators.py
示例16: validate_applications
def validate_applications(namespace):
if namespace.resource_group_name:
if isinstance(namespace.application, list):
if len(namespace.application) == 1:
if is_valid_resource_id(namespace.application[0]):
raise CLIError("Specify either a full resource id or an application name and resource group.")
else:
raise CLIError("Resource group only allowed with a single application name.")
开发者ID:GeekTrainer,项目名称:azure-cli-extensions,代码行数:8,代码来源:_validators.py
示例17: validate_subnet
def validate_subnet(ns):
from msrestazure.tools import is_valid_resource_id
# vnet_name is depricated, using for backwards compatability
if ns.vnet_name and not ns.vnet:
ns.vnet = ns.vnet_name
if not is_valid_resource_id(ns.subnet) and ((ns.vnet and not ns.subnet) or (ns.subnet and not ns.vnet)):
raise CLIError('usage error: --vnet NAME --subnet NAME | --vnet ID --subnet NAME | --subnet ID')
开发者ID:sptramer,项目名称:azure-cli,代码行数:9,代码来源:_validators.py
示例18: _validate_name_or_id
def _validate_name_or_id(public_ip):
# determine if public_ip_address is name or ID
is_id = is_valid_resource_id(public_ip)
return public_ip if is_id else resource_id(
subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='Microsoft.Network',
type='publicIPAddresses',
name=public_ip)
开发者ID:jiayexie,项目名称:azure-cli,代码行数:9,代码来源:_validators.py
示例19: validate_express_route_port
def validate_express_route_port(cmd, namespace):
from msrestazure.tools import is_valid_resource_id, resource_id
if namespace.express_route_port and not is_valid_resource_id(namespace.express_route_port):
namespace.express_route_port = resource_id(
subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='Microsoft.Network',
type='expressRoutePorts',
name=namespace.express_route_port
)
开发者ID:GeekTrainer,项目名称:azure-cli-extensions,代码行数:10,代码来源:_validators.py
示例20: validate_virtual_hub
def validate_virtual_hub(cmd, namespace):
from msrestazure.tools import is_valid_resource_id, resource_id
if namespace.virtual_hub and not is_valid_resource_id(namespace.virtual_hub):
namespace.virtual_hub = resource_id(
subscription=get_subscription_id(cmd.cli_ctx),
resource_group=namespace.resource_group_name,
namespace='Microsoft.Network',
type='virtualHubs',
name=namespace.virtual_hub
)
开发者ID:GeekTrainer,项目名称:azure-cli-extensions,代码行数:10,代码来源:_validators.py
注:本文中的msrestazure.tools.is_valid_resource_id函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论