Skip to content

Commit 2924917

Browse files
Merge pull request #1793 from Azure/lewang/symbolicschema
Update deploymentTemplate schema files to support resource symbolic name
2 parents b62872f + 1d2a529 commit 2924917

18 files changed

+30171
-17512
lines changed

generator/constants.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,15 @@ export const resourceGroupRootSchema = {
1919
};
2020
export const subscriptionRootSchema = {
2121
file: path.join(schemasBasePath, '2018-05-01/subscriptionDeploymentTemplate.json'),
22-
jsonPath: 'properties.resources.items.allOf[1].oneOf'
22+
jsonPath: 'definitions.resource.allOf[1].oneOf'
2323
};
2424
export const tenantRootSchema = {
2525
file: path.join(schemasBasePath, '2019-08-01/tenantDeploymentTemplate.json'),
26-
jsonPath: 'properties.resources.items.oneOf[0].allOf[1].oneOf'
26+
jsonPath: 'definitions.resource.oneOf[0].allOf[1].oneOf'
2727
};
2828
export const managementGroupRootSchema = {
2929
file: path.join(schemasBasePath, '2019-08-01/managementGroupDeploymentTemplate.json'),
30-
jsonPath: 'properties.resources.items.allOf[1].oneOf'
30+
jsonPath: 'definitions.resource.allOf[1].oneOf'
3131
};
3232
export const generatedSchemasTemplatePath = path.join(__dirname, 'resources/autogeneratedResources_template.json');
3333

schemas/2014-04-01-preview/deploymentTemplate.json

Lines changed: 7286 additions & 7264 deletions
Large diffs are not rendered by default.

schemas/2015-01-01/deploymentTemplate.json

Lines changed: 7716 additions & 7694 deletions
Large diffs are not rendered by default.

schemas/2018-05-01/subscriptionDeploymentTemplate.json

Lines changed: 517 additions & 507 deletions
Large diffs are not rendered by default.

schemas/2019-04-01/deploymentTemplate.json

Lines changed: 1574 additions & 1552 deletions
Large diffs are not rendered by default.

schemas/2019-08-01/managementGroupDeploymentTemplate.json

Lines changed: 208 additions & 186 deletions
Large diffs are not rendered by default.

schemas/2019-08-01/tenantDeploymentTemplate.json

Lines changed: 328 additions & 306 deletions
Large diffs are not rendered by default.
Lines changed: 377 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,377 @@
1+
{
2+
"$schema": "https://schema.management.azure.com/schemas/2019-08-01/managementGroupDeploymentTemplate.json#",
3+
"metadata": {
4+
"comments": "This template was developed for schema validation purposes.",
5+
"author": "Azure Deployments"
6+
},
7+
"contentVersion": "1.0.0.0",
8+
"parameters": {
9+
"siteName": {
10+
"type": "string"
11+
},
12+
"hostingPlanName": {
13+
"type": "string"
14+
},
15+
"hostingEnvironment": {
16+
"type": "string",
17+
"defaultValue": ""
18+
},
19+
"siteLocation": {
20+
"type": "string"
21+
},
22+
"sku": {
23+
"type": "string",
24+
"allowedValues": [
25+
"Free",
26+
"Shared",
27+
"Basic",
28+
"Standard",
29+
"Premium"
30+
],
31+
"defaultValue": "Free"
32+
},
33+
"workerSize": {
34+
"type": "string",
35+
"allowedValues": [
36+
"0",
37+
"1",
38+
"2"
39+
],
40+
"defaultValue": "0"
41+
},
42+
"serverName": {
43+
"type": "string"
44+
},
45+
"serverLocation": {
46+
"type": "string"
47+
},
48+
"administratorLogin": {
49+
"type": "string"
50+
},
51+
"administratorLoginPassword": {
52+
"type": "securestring"
53+
},
54+
"databaseName": {
55+
"type": "string"
56+
},
57+
"collation": {
58+
"type": "string",
59+
"defaultValue": "SQL_Latin1_General_CP1_CI_AS"
60+
},
61+
"edition": {
62+
"type": "string",
63+
"defaultValue": "Web"
64+
},
65+
"maxSizeBytes": {
66+
"type": "string",
67+
"defaultValue": "1073741824"
68+
},
69+
"requestedServiceObjectiveId": {
70+
"type": "string",
71+
"defaultValue": "910b4fcb-8a29-4c3e-958f-f7ba794388b2"
72+
},
73+
"planName": {
74+
"type": "string"
75+
},
76+
"planLocation": {
77+
"type": "string"
78+
},
79+
"planSKU": {
80+
"type": "string",
81+
"allowedValues": [
82+
"Free",
83+
"Shared",
84+
"Basic",
85+
"Standard"
86+
],
87+
"defaultValue": "Free"
88+
},
89+
"planWorkerSize": {
90+
"type": "string",
91+
"allowedValues": [
92+
"0",
93+
"1",
94+
"2"
95+
],
96+
"defaultValue": "0"
97+
},
98+
"mysqlName": {
99+
"type": "string"
100+
},
101+
"mysqlLocation": {
102+
"type": "string"
103+
},
104+
"mysqlSku": {
105+
"type": "string",
106+
"allowedValues": [
107+
"Free",
108+
"Jupiter",
109+
"Staurn",
110+
"Venus"
111+
],
112+
"defaultValue": "Free"
113+
},
114+
"nestedTemplateFile": {
115+
"type": "string"
116+
},
117+
"_artifactsLocation": {
118+
"type": "string"
119+
},
120+
"_artifactsLocationSasToken": {
121+
"type": "securestring"
122+
},
123+
"redisName": {
124+
"type": "string"
125+
},
126+
"redisLocation": {
127+
"type": "string"
128+
},
129+
"redisSKUName": {
130+
"type": "string",
131+
"allowedValues": [
132+
"Basic",
133+
"Standard"
134+
],
135+
"defaultValue": "Standard"
136+
},
137+
"redisSKUFamily": {
138+
"type": "string",
139+
"allowedValues": [
140+
"C"
141+
],
142+
"defaultValue": "C"
143+
},
144+
"redisSKUCapacity": {
145+
"type": "int",
146+
"allowedValues": [
147+
0,
148+
1,
149+
2,
150+
3,
151+
4,
152+
5,
153+
6
154+
],
155+
"defaultValue": 0
156+
},
157+
"redisRedisVersion": {
158+
"type": "string",
159+
"allowedValues": [
160+
"2.8"
161+
],
162+
"defaultValue": "2.8"
163+
},
164+
"server2Name": {
165+
"type": "string"
166+
},
167+
"server2Location": {
168+
"type": "string"
169+
},
170+
"server2AdminLogin": {
171+
"type": "string"
172+
},
173+
"server2AdminLoginPassword": {
174+
"type": "securestring"
175+
},
176+
"db2Name": {
177+
"type": "string"
178+
},
179+
"db2Collation": {
180+
"type": "string",
181+
"defaultValue": "SQL_Latin1_General_CP1_CI_AS"
182+
},
183+
"db2Edition": {
184+
"type": "string",
185+
"defaultValue": "Web",
186+
"allowedValues": [
187+
"Basic",
188+
"Business",
189+
"Premium",
190+
"Standard",
191+
"Web"
192+
]
193+
},
194+
"importStorageKeyType": {
195+
"type": "string"
196+
},
197+
"importStorageKey": {
198+
"type": "securestring"
199+
},
200+
"importStorageUri": {
201+
"type": "string"
202+
},
203+
"importAdministratorLogin": {
204+
"type": "string"
205+
},
206+
"importAdministratorLoginPassword": {
207+
"type": "securestring"
208+
},
209+
"app2Name": {
210+
"type": "string"
211+
},
212+
"hostingEnvironment2": {
213+
"type": "string",
214+
"defaultValue": ""
215+
},
216+
"deployPackage": {
217+
"type": "string"
218+
}
219+
},
220+
"resources": {
221+
"Symbol1": {
222+
"name": "nested",
223+
"type": "Microsoft.Resources/deployments",
224+
"apiVersion": "2019-05-01",
225+
"location": "westus",
226+
"subscriptionId": "aaa-aaa",
227+
"dependsOn": [],
228+
"properties": {
229+
"mode": "Incremental",
230+
"templateLink": {
231+
"uri": "[concat(parameters('_artifactsLocation'), '/', parameters('nestedTemplateFile'), parameters('_artifactsLocationSasToken'))]",
232+
"contentVersion": "1.0.0.0"
233+
},
234+
"parameters": {}
235+
}
236+
},
237+
"Symbol2": {
238+
"type": "Microsoft.Resources/deployments",
239+
"name": "rg-nested",
240+
"apiVersion": "2019-05-01",
241+
"subscriptionId": "aaa-aaa",
242+
"dependsOn": [
243+
"testrg"
244+
],
245+
"properties": {
246+
"template": {
247+
"$schema": "https://schema.management.azure.com/schemas/2018-05-01/subscriptionDeploymentTemplate.json#",
248+
"contentVersion": "1.0.0.0",
249+
"parameters": {},
250+
"variables": {},
251+
"resources": [
252+
{
253+
"type": "Microsoft.Resources/resourceGroups",
254+
"name": "test-rg",
255+
"apiVersion": "2018-05-01",
256+
"location": "East US",
257+
"properties": {
258+
}
259+
}
260+
]
261+
},
262+
"mode": "Incremental"
263+
}
264+
},
265+
"Symbol3": {
266+
"apiVersion": "2017-09-01",
267+
"name": "validroleAssignments",
268+
"type": "Microsoft.Authorization/roleAssignments",
269+
"properties": {
270+
"roleDefinitionId": "8e3af657a8ff443ca75c2fe8c4bcb646",
271+
"principalId": "2ab66211054c4d9ba1aed308308aas34"
272+
}
273+
},
274+
"Symbol4": {
275+
"apiVersion": "2017-09-01",
276+
"name": "validroleDefinitions",
277+
"type": "Microsoft.Authorization/roleDefinitions",
278+
"properties": {
279+
"roleName": "testroleDefinition",
280+
"description": "test roleDedinition description",
281+
"type": "roleDedinition",
282+
"permissions": [
283+
{
284+
"Actions": [
285+
"*/read"
286+
],
287+
"NotActions": []
288+
}
289+
],
290+
"assignableScopes": [
291+
"/"
292+
]
293+
}
294+
},
295+
"Symbol5": {
296+
"apiVersion": "2018-05-01",
297+
"properties": {
298+
"displayName": "Test Policy Set Definition",
299+
"policyType": "Custom",
300+
"metadata": {
301+
"category": "SomeCategory",
302+
"SomethingUseful": {
303+
"aThing": "A thing value"
304+
}
305+
},
306+
"parameters": {
307+
"Parameter1": {
308+
"type": "String",
309+
"metadata": {
310+
"displayName": "Parameter1",
311+
"description": "The first parameter"
312+
},
313+
"defaultValue": "audit"
314+
}
315+
},
316+
"policyDefinitions": [
317+
{
318+
"policyDefinitionReferenceId": "SomePolicyDefinitionName",
319+
"policyDefinitionId": "/subscriptions/63e997c7-5fd1-4b3a-8eb5-a3dc0fb3ab6f/providers/Microsoft.Authorization/policyDefinitions/SomePolicyDefinitionName",
320+
"parameters": {
321+
"effect": {
322+
"value": "audit"
323+
}
324+
}
325+
},
326+
{
327+
"policyDefinitionReferenceId": "AnotherPolicyDefinitionName",
328+
"policyDefinitionId": "/subscriptions/63e997c7-5fd1-4b3a-8eb5-a3dc0fb3ab6f/providers/Microsoft.Authorization/policyDefinitions/AnotherPolicyDefinitionName",
329+
"parameters": {
330+
"effect": {
331+
"value": "[parameters('Parameter1')]"
332+
}
333+
}
334+
}
335+
]
336+
},
337+
"id": "/subscriptions/63e997c7-5fd1-4b3a-8eb5-a3dc0fb3ab6f/providers/Microsoft.Authorization/policySetDefinitions/SomePolicySetDefinitionName",
338+
"type": "Microsoft.Authorization/policySetDefinitions",
339+
"name": "SomePolicySetDefinitionName"
340+
},
341+
"Symbol6": {
342+
"apiVersion": "2018-05-01",
343+
"sku": {
344+
"name": "A0",
345+
"tier": "Free"
346+
},
347+
"properties": {
348+
"displayName": "Test Assignment",
349+
"policyDefinitionId": "/subscriptions/d5a43281-5981-4cc7-a939-6ff1ab06636a/providers/Microsoft.Authorization/policyDefinitions/SomePolicyDefinition",
350+
"scope": "/subscriptions/d5a43281-5981-4cc7-a939-6ff1ab06636a/resourceGroups/SomeResourceGroup",
351+
"notScopes": [
352+
"/subscriptions/d5a43281-5981-4cc7-a939-6ff1ab06636a/resourceGroups/SomeResourceGroup"
353+
],
354+
"parameters": {
355+
"allowedLocations": {
356+
"value": [
357+
"centralus"
358+
]
359+
}
360+
},
361+
"description": "Some policy assignment test",
362+
"metadata": {
363+
"assignedBy": "Test Writer",
364+
"parameterScopes": {}
365+
}
366+
},
367+
"identity": {
368+
"principalId": "c2360c90-bab1-4e87-8ea0-da97d17c037d",
369+
"tenantId": "ae0450b3-f3c6-4685-bc92-2669d7d5f810",
370+
"type": "SystemAssigned"
371+
},
372+
"id": "/subscriptions/d5a43281-5981-4cc7-a939-6ff1ab06636a/resourceGroups/SomeResourceGroup/providers/Microsoft.Authorization/policyAssignments/TestAssignment",
373+
"type": "Microsoft.Authorization/policyAssignments",
374+
"name": "TestAssignment"
375+
}
376+
}
377+
}

0 commit comments

Comments
 (0)