-
Notifications
You must be signed in to change notification settings - Fork 0
/
shell-definition.yaml
134 lines (112 loc) · 6.27 KB
/
shell-definition.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
tosca_definitions_version: tosca_simple_yaml_1_0
metadata:
template_name: Microsoft Azure Cloud Provider Shell 2G
template_author: Quali
template_version: 2.4.2
template_icon: azure-icon.png
description: >
Sample TOSCA based shell
imports:
- cloudshell_standard: cloudshell_cloud_provider_standard_1_0_0.yaml
node_types:
vendor.resource.Microsoft Azure Cloud Provider 2G:
derived_from: cloudshell.nodes.CustomCloudProvider
capabilities:
concurrent_command_capability:
type: cloudshell.capabilities.SupportConcurrentCommands
auto_discovery_capability:
type: cloudshell.capabilities.AutoDiscovery
properties:
enable_auto_discovery:
type: boolean
default: true
auto_discovery_description:
type: string
default: Describe the auto discovery
inventory_description:
type: string
default: "Azure template will create a Azure resource in CloudShell. Once the Azure is modeled correctly in CloudShell it will be possible to deploy Apps on Microsoft Azure."
hide_address:
type: string
default: true
Region:
type: string
VM Size:
type: string
default: Standard_A3
Networks in use:
type: string
default: "10.0.0.0/24"
Azure Subscription ID:
type: string
Azure Tenant ID:
type: string
Azure Application ID:
type: string
Azure Application Key:
type: cloudshell.datatypes.Password
Management Group Name:
type: string
Sandbox Virtual Network Name:
type: string
Management Virtual Network Name:
type: string
Additional Mgmt Networks:
type: string
Private IP Allocation Method:
type: string
default: "Azure Allocation"
Custom Tags:
type: string
properties:
Region:
type: string
description: "The public cloud region to be used by this cloud provider resource."
VM Size:
type: string
description: "The Microsoft Azure VM Size. The VM Size determines the CPU, memory, disk size and networking capacity of the VM. For example: “Standard_A1_v2”. Use the <a href='https://docs.microsoft.com/en-us/azure/virtual-machines/virtual-machines-windows-sizes' target='_blank'>Azure documentation </a> for more information, or the Azure CLI for a list of your region’s supported values: <i>az vm list-sizes --location “West US”</i>"
Networks in use:
type: string
description: "Reserved networks to be excluded when allocating Sandbox networks. The value should include at least the Management Network. The syntax is comma-separated CIDRs. For example: “10.0.0.0/24, 10.1.0.0/16, 172.31.0.0/24”."
Azure Subscription ID:
type: string
description: "The Subscription ID of the Azure user."
Azure Tenant ID:
type: string
description: "The Azure Tenant Id that is associated with your Azure Active Directory (AAD) instance. For example: ccd13026-98e3-4e90-01f4-28e2afdf3213. The Tenant ID is created for the Active Directory and can be retrieved when creating the Azure API web application or retrieved from Azure CLI. For more information, see the “Configure Azure API to work with CloudShell” article in the CloudShell online help."
Azure Application ID:
type: string
description: "Application Id associated with the Azure API application. The application ID allows CloudShell to access the Azure API and is generated as part of the web application’s configuration process. For more information, see the “Configure Azure API to work with CloudShell” article in the CloudShell online help."
Azure Application Key:
type: cloudshell.datatypes.Password
description: "Application key associated with the Azure API application. The application key allows CloudShell to access the Azure API and is generated as part of the Azure application’s configuration process. For more information, see the “Configure Azure API to work with CloudShell” article in the CloudShell online help."
Management Group Name:
type: string
description: "The name of the Management Resource Group."
Sandbox Virtual Network Name:
type: string
description: "The name of the Sandbox Virtual Network under the Resource Group. In dedicated mode, the sandbox subnet will be created in this VNet. In predefined mode, make sure the subnet to be used is located within this VNet."
Management Virtual Network Name:
type: string
description: "The name of the Management Virtual Network under the Resource Group."
Additional Mgmt Networks:
type: string
description: "Networks to be allowed to interact with all sandboxes. This is used for allowing connectivity to Azure resources outside the CloudShell Management VNet that should be available to CloudShell sandboxes. The syntax is comma separated CIDRs."
Custom Tags:
type: string
description: "Semi-colon separated list of tags that will be applied to the VM and all related objects created during the app deploy. Attribute supports the following syntax: [TagName]=[TagValue]; [TagName]=[TagValue]. For example: “Tag1=Val1;Tag2=Val2”"
Private IP Allocation Method:
type: string
description: "Defines the method that will be used to allocated private ip addresses to VMs. When Cloudshell Allocation method is selected the Azure-Shell will use the CloudShell Pool API to checkout the next available ip address when needed. When the instance is deleted the checked out ip addresses will be released. When Azure Allocation method is selected the private ips will be assigned by Azure when creating the network interface."
constraints:
- valid_values: ["Azure Allocation", "Cloudshell Allocation"]
artifacts:
icon:
file: azure-icon.png
type: tosca.artifacts.File
driver:
file: AzureDriver.zip
type: tosca.artifacts.File
deployment:
file: Deployments.zip
type: tosca.artifacts.File