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
6STORAGE_RESOURCE_TYPE = 'Microsoft.Storage/storageAccounts'
7
8ACR_RESOURCE_PROVIDER = 'Microsoft.ContainerRegistry'
9REGISTRY_RESOURCE_TYPE = ACR_RESOURCE_PROVIDER + '/registries'
10WEBHOOK_RESOURCE_TYPE = REGISTRY_RESOURCE_TYPE + '/webhooks'
11REPLICATION_RESOURCE_TYPE = REGISTRY_RESOURCE_TYPE + '/replications'
12
13TASK_RESOURCE_TYPE = REGISTRY_RESOURCE_TYPE + '/tasks'
14TASK_VALID_VSTS_URLS = ['visualstudio.com', 'dev.azure.com']
15
16ACR_TASK_YAML_DEFAULT_NAME = 'acb.yaml'
17
18ORYX_PACK_BUILDER_IMAGE = 'mcr.microsoft.com/oryx/pack-builder:stable'
19
20
21def get_classic_sku(cmd):
22    SkuName = cmd.get_models('SkuName')
23    return [SkuName.classic.value]
24
25
26def get_managed_sku(cmd):
27    SkuName = cmd.get_models('SkuName')
28    return [SkuName.basic.value, SkuName.standard.value, SkuName.premium.value]
29
30
31def get_premium_sku(cmd):
32    SkuName = cmd.get_models('SkuName')
33    return [SkuName.premium.value]
34
35
36def get_valid_os(cmd):
37    OS = cmd.get_models('OS')
38    return [item.value.lower() for item in OS]
39
40
41def get_valid_architecture(cmd):
42    Architecture = cmd.get_models('Architecture')
43    return [item.value.lower() for item in Architecture]
44
45
46def get_valid_variant(cmd):
47    Variant = cmd.get_models('Variant')
48    return [item.value.lower() for item in Variant]
49
50
51def get_finished_run_status(cmd):
52    RunStatus = cmd.get_models('RunStatus')
53    return [RunStatus.succeeded.value,
54            RunStatus.failed.value,
55            RunStatus.canceled.value,
56            RunStatus.error.value,
57            RunStatus.timeout.value]
58
59
60def get_succeeded_run_status(cmd):
61    RunStatus = cmd.get_models('RunStatus')
62    return [RunStatus.succeeded.value]
63
64
65def get_acr_models(cmd):
66    from azure.cli.core.profiles import ResourceType, get_sdk
67    return get_sdk(cmd.cli_ctx, ResourceType.MGMT_CONTAINERREGISTRY, 'models')
68