-
Notifications
You must be signed in to change notification settings - Fork 66
/
config.json
171 lines (171 loc) · 7.56 KB
/
config.json
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
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
{
"admin_user": "default cluster admin - nodefault",
"install_from": "VM to install from. If public IP is set use FQDN, otherwise use this value. Can be left empty when running local scripts only",
"location": "azure region to use",
"proximity_placement_group_name": "name of the proximity placement group to create and join resources to",
"resource_group": "resource group name to create resources in",
"global_tags": {
"tag_key_1": "tag_value_1",
"tag_key_2": "tag_value_2"
},
"variables": {
"variable1": "value1",
"variable2": "value2"
},
"vnet": {
"address_prefix": "address space (CIDR)",
"dns_domain": "private domain name to create",
"name": "vnet name - If it exists it has to be in a different resource groups than the resources deployed",
"resource_group": "vnet resource group when specifying an existing vnet",
"subnets": {
"subnet1": "range1 (CIDR)",
"subnet2": "range2 (CIDR)"
},
"peer": {
"peername1": {
"resource_group": "name of the resource group to peer the vnet to",
"vnet_name": "name of the vnet to peer to"
}
},
"routes": {
"route1": {
"address_prefix": "address space (CIDR)",
"next_hop": "TO DOCUMENT",
"subnet": "TO DOCUMENT"
}
}
},
"storage": {
"storagename": {
"ad_password": "Domain password to join to",
"ad_server": "Domain Server to connect to",
"ad_username": "User to use to join the domain",
"joindomain": "Domain name to join to",
"subnet": "subnet name in which to inject ANF NICs",
"type": "anf, storageaccount",
"sku": "Standard_LRS, Standard_GRS, Standard_RAGRS, Standard_ZRS, Premium_LRS, Premium_ZRS, Standard_GZRS, Standard_RAGZRS",
"containers": [ "container1", "container2"],
"pools": {
"pool1": {
"service_level": "Ultra, Premium, Standard",
"size": "Total pool size in TB. 4 to 100",
"volumes": {
"volume1": {
"size": "Volume size in TB",
"type": "(nfs), cifs",
"mount": "/mount1"
}
}
}
}
}
},
"resources": {
"vmName1": {
"accelerated_networking": "true, (false)",
"availability_set": "true, (false)",
"availability_zones": "1,2,3 - Cannot be empty, can be removed",
"data_disks": [1024, 2048],
"dns_name": "The dns name to use. If this is not set, then the resource name with a uuid will be used",
"image": "For a public image use format OpenLogic:CentOS:7.7:latest ; For a custom image use the imageID of a managed image",
"instances": "Number of VMs to create; default is 1",
"low_priority": "true, (false)",
"managed_identity": {
"role": "reader, contributor, owner",
"scope": "resource_group"
},
"nsg_allow": ["rdp", "ssh", "http", "https", "grafana"],
"nsg_source_ip": "Source IP filter for NSG Allow rules. Default: *",
"ephemeral_os_disk": "Set whether to use the ephermal disk for the operation system; default os false",
"ephemeral_os_disk_placement": "Specifies the ephemeral disk placement. Possible values are: CacheDisk (default), ResourceDisk",
"os_disk_size": "OS Disk size in GB. This is only needed if you want to use a non default size or increase the OS disk size",
"os_storage_sku": "(Premium_LRS), StandardSSD_LRS, Standard_LRS",
"password": "user admin password to use with Windows",
"proximity_placement_group": "true, (false)",
"public_ip": "true, (false)",
"resource_tags": {"key1":1, "key2": "value2"},
"subnet": "subnet name to create the VMs in",
"storage_cache": "None, (ReadWrite), ReadOnly - Only used for datadisks",
"storage_sku": "(Premium_LRS), StandardSSD_LRS, Standard_LRS",
"tags": ["tag1", "tag2"],
"type": "vm",
"vm_type": "VM SKU size"
},
"vmssName1": {
"accelerated_networking": "true, (false)",
"availability_zones": "1,2,3 - Cannot be empty, can be removed",
"data_disks": [128, 1024],
"fault_domain_count": 99,
"single_placement_group": "(true), false",
"overprovision": "(true), false",
"image": "For a public image use format OpenLogic:CentOS:7.7:latest ; For a custom image use the imageID of a managed image",
"instances": "Number of VMs to create in the VMSS",
"low_priority": "true, (false)",
"managed_identity": {
"role": "reader, contributor, owner",
"scope": "resource_group"
},
"ephemeral_os_disk": "Set whether to use the ephermal disk for the operation system; default os false",
"ephemeral_os_disk_placement": "Specifies the ephemeral disk placement. Possible values are: CacheDisk (default), ResourceDisk",
"os_disk_size": "OS Disk size in GB. This is only needed if you want to use a non default size or increase the OS disk size",
"os_storage_sku": "(Premium_LRS), StandardSSD_LRS, Standard_LRS",
"password": "user admin password to use with Windows",
"proximity_placement_group": "true, (false)",
"resource_tags": {"key1":1, "key2": "value2"},
"subnet": "subnet name to create the VMs in",
"storage_cache": "None, (ReadWrite), ReadOnly - Only used for datadisks",
"storage_sku": "(Premium_LRS), StandardSSD_LRS, Standard_LRS",
"tags": ["tag1", "tag2"],
"type": "vmss",
"vm_type": "VM SKU size"
}
},
"install": [
{
"script": "script1.sh",
"type": "(jumpbox_script), local_script",
"tag": "tag1",
"copy": [
"filename"
],
"args": ["value1", "value2" ],
"deps": ["file1", "file2" ],
"sudo": "true, (false)",
"reboot": "true, (false)"
}
],
"cyclecloud": {
"clusters": {
"clustername": {
"template": "templatename",
"parameters": {
"parameter1": "value1",
"parameter2": "value2",
"xxxClusterInitSpecs": {
"projectname:specname:i.j.k": {
"Order": 10000,
"Name": "projectname:specname:i.j.k",
"Spec": "specname",
"Project": "projectname",
"Version": "i.j.k",
"Locker": "azure-storage"
}
}
}
}
},
"projects": {
"projectname:specname:i.j.k": [
{
"script": "script1.sh",
"args": [ "arg1", "arg2"],
"deps": ["dep1.data", "dep2.json"]
},
{
"script": "script2.sh",
"args": [ "arg1", "arg2"]
}
]
}
}
}