1# -------------------------------------------------------------------------------------------- 2# Copyright (c) Microsoft Corporation. All rights reserved. 3# Licensed under the MIT License. See License.txt in the project root for license information. 4# -------------------------------------------------------------------------------------------- 5 6from azure.cli.core.commands.client_factory import get_mgmt_service_client 7 8 9def get_arm_service_client(cli_ctx): 10 """Returns the client for managing ARM resources. """ 11 from azure.mgmt.resource import ResourceManagementClient 12 return get_mgmt_service_client(cli_ctx, ResourceManagementClient) 13 14 15def get_storage_service_client(cli_ctx): 16 """Returns the client for managing storage accounts. """ 17 from azure.cli.core.profiles import ResourceType 18 return get_mgmt_service_client(cli_ctx, ResourceType.MGMT_STORAGE) 19 20 21def get_acr_service_client(cli_ctx, api_version=None): 22 """Returns the client for managing container registries. """ 23 from azure.mgmt.containerregistry import ContainerRegistryManagementClient 24 return get_mgmt_service_client(cli_ctx, ContainerRegistryManagementClient, api_version=api_version) 25 26 27def cf_acr_registries(cli_ctx, *_): 28 return get_acr_service_client(cli_ctx).registries 29 30 31def cf_acr_replications(cli_ctx, *_): 32 return get_acr_service_client(cli_ctx).replications 33 34 35def cf_acr_webhooks(cli_ctx, *_): 36 return get_acr_service_client(cli_ctx).webhooks 37 38 39def cf_acr_tasks(cli_ctx, *_): 40 return get_acr_service_client(cli_ctx).tasks 41 42 43def cf_acr_runs(cli_ctx, *_): 44 return get_acr_service_client(cli_ctx).runs 45