-
Notifications
You must be signed in to change notification settings - Fork 0
/
CreateUIDefinition.json
147 lines (147 loc) · 4.92 KB
/
CreateUIDefinition.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
{
"handler": "Microsoft.Compute.MultiVm",
"version": "0.0.1-preview",
"parameters": {
"basics": [
{
"name": "adminUsername",
"type": "Microsoft.Compute.UserNameTextBox",
"label": "Username",
"toolTip": "Username for Palo Alto Networks VM-Series next-generation firewall",
"osPlatform": "Linux"
},
{
"name": "SSHCredntials",
"type": "Microsoft.Compute.CredentialsCombo",
"label": {
"authenticationType": "Authentication type",
"password": "Password",
"confirmPassword": "Confirm password",
"sshPublicKey": "SSH public key"
},
"toolTip": {
"authenticationType": "",
"password": "",
"sshPublicKey": ""
},
"constraints": {
"required": true
},
"options": {
"hideConfirmation": false
},
"osPlatform": "Linux"
}
],
"steps": [
{
"name": "panvnetconfig",
"label": "Storage and Networking",
"subLabel": {
"preValidation": "Configure PA-VM",
"postValidation": "Done"
},
"bladeTitle": "Storage and Networking",
"elements": [
{
"name": "newStorageAccount",
"type": "Microsoft.Storage.StorageAccountSelector",
"label": "Storage Account Name",
"defaultValue": {
"type": "Standard_LRS"
}
},
{
"name": "ipAddressPrefix",
"type": "Microsoft.Common.TextBox",
"label": "VNET IP address space (/16)",
"toolTip": "Creates a VNET with provided private IP prefix (RFC 1918). Format: xxx.yyy",
"defaultValue": "192.168",
"osPlatform": "Linux"
},
{
"name": "srcIPInboundNSG",
"type": "Microsoft.Common.TextBox",
"label": "Network Security Group: inbound source IP",
"toolTip": "Provide your source IP address (or range) to restrict access to public interfaces",
"defaultValue": "",
"osPlatform": "Linux"
}
]
},
{
"name": "VMSeriesConfig",
"label": "VM-Series Configuration",
"subLabel": {
"preValidation": "Configure PA-VM",
"postValidation": "Done"
},
"bladeTitle": "VM-Series Configuration",
"elements": [
{
"name": "dnsNameForPublicIP",
"type": "Microsoft.Network.PublicIpAddressCombo",
"label": {
"publicIpAddress": "Public IP address",
"domainNameLabel": "DNS Name"
},
"toolTip": {
"domainNameLabel": "Unique DNS name prefix for public IP of management interface (eth0)"
},
"defaultValue": {
"publicIpAddressName": "publicIP",
"domainNameLabel": ""
},
"options": {
"hideNone": true
}
},
{
"name": "vmName",
"type": "Microsoft.Common.TextBox",
"label": "VM name of VM-Series",
"toolTip": "VM name in resource group after deployment",
"constraints": {
"required": true,
"regex": "^[a-z0-9](?:[a-z0-9]|(\\-(?!\\-))){8,24}[a-z0-9]$|^\\$root$",
"validationMessage": "VM names must be between 8 and 24 characters long, and can contain numbers, lowercase letters and dash"
},
"osPlatform": "Linux"
},
{
"name": "vmSize",
"type": "Microsoft.Compute.SizeSelector",
"label": "Virtual machine size",
"toolTip": "Size of Azure virtual machine to provision for VM-Series",
"recommendedSizes": [
"Standard_D3",
"Standard_D4"
],
"constraints": {
"allowedSizes": [
"Standard_D3",
"Standard_D4"
]
},
"osPlatform": "Linux",
"imageReference": {
"publisher": "paloaltonetworks",
"offer": "vm-series-testpass1-preview",
"sku": "vmseriesbyol"
}
}
]
}
],
"outputs": {
"newStorageAccount": "[steps('panvnetconfig').newStorageAccount]",
"dnsNameForPublicIP": "[steps('VMSeriesConfig').dnsNameForPublicIP]",
"vmName": "[steps('VMSeriesConfig').vmName]",
"adminUsername": "[basics('adminUsername')]",
"adminPassword": "[basics('SSHCredntials').password]",
"vmSize": "[steps('VMSeriesConfig').vmSize]",
"ipAddressPrefix": "[steps('panvnetconfig').ipAddressPrefix]",
"srcIPInboundNSG": "[steps('panvnetconfig').srcIPInboundNSG]"
}
}
}