Skip to content

Commit f47215e

Browse files
aashish1987Aashish Rajaram Salokhe
authored andcommitted
Guest Configuration S360 Swagger fixes (Azure#15988)
* Add GET all methods for resource group and subscription * Fix Linter Validation issue * Fix Swagger Correctness S360 items * Fix swagger validation comments * Fix model validaiton * Fix Lint errors * Fix model validation for examples Co-authored-by: Aashish Rajaram Salokhe <aasalokh@microsoft.com>
1 parent b2ff1f1 commit f47215e

13 files changed

+841
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
{
2+
"parameters": {
3+
"subscriptionId": "mySubscriptionId",
4+
"resourceGroupName": "myResourceGroupName",
5+
"api-version": "2020-06-25"
6+
},
7+
"responses": {
8+
"200": {
9+
"headers": {},
10+
"body": [
11+
{
12+
"location": "centraluseuap",
13+
"id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2",
14+
"name": "AuditSecureProtocol2",
15+
"properties": {
16+
"complianceStatus": "Compliant",
17+
"assignmentHash": "content hash",
18+
"latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1",
19+
"lastComplianceStatusChecked": "2018-08-29T22:14:13Z",
20+
"context": null,
21+
"guestConfiguration": {
22+
"kind": null,
23+
"name": "AuditSecureProtocol2",
24+
"version": "1.0.0.3",
25+
"contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol2/AuditSecureProtocol2_1.0.0.3.zip",
26+
"contentHash": "content hash",
27+
"configurationParameter": [],
28+
"configurationSetting": null
29+
},
30+
"provisioningState": null
31+
}
32+
},
33+
{
34+
"location": "centraluseuap",
35+
"id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment",
36+
"name": "myAssignment",
37+
"properties": {
38+
"complianceStatus": "Compliant",
39+
"assignmentHash": "content hash",
40+
"latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1",
41+
"lastComplianceStatusChecked": "2018-08-29T22:14:13Z",
42+
"context": null,
43+
"guestConfiguration": {
44+
"kind": null,
45+
"name": "myAssignment",
46+
"version": "1.0.0.3",
47+
"contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/myAssignment/myAssignment.0.0.3.zip",
48+
"contentHash": "content hash",
49+
"configurationParameter": [],
50+
"configurationSetting": null
51+
},
52+
"provisioningState": null
53+
}
54+
}
55+
]
56+
},
57+
"204": {}
58+
}
59+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
{
2+
"parameters": {
3+
"subscriptionId": "mySubscriptionId",
4+
"api-version": "2020-06-25"
5+
},
6+
"responses": {
7+
"200": {
8+
"headers": {},
9+
"body": [
10+
{
11+
"location": "centraluseuap",
12+
"id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2",
13+
"name": "AuditSecureProtocol2",
14+
"properties": {
15+
"complianceStatus": "Compliant",
16+
"assignmentHash": "content hash",
17+
"latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1",
18+
"lastComplianceStatusChecked": "2018-08-29T22:14:13Z",
19+
"context": null,
20+
"guestConfiguration": {
21+
"kind": null,
22+
"name": "AuditSecureProtocol2",
23+
"version": "1.0.0.3",
24+
"contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol2/AuditSecureProtocol2_1.0.0.3.zip",
25+
"contentHash": "content hash",
26+
"configurationParameter": [],
27+
"configurationSetting": null
28+
},
29+
"provisioningState": null
30+
}
31+
},
32+
{
33+
"location": "centraluseuap",
34+
"id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment",
35+
"name": "myAssignment",
36+
"properties": {
37+
"complianceStatus": "Compliant",
38+
"assignmentHash": "content hash",
39+
"latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1",
40+
"lastComplianceStatusChecked": "2018-08-29T22:14:13Z",
41+
"context": null,
42+
"guestConfiguration": {
43+
"kind": null,
44+
"name": "myAssignment",
45+
"version": "1.0.0.3",
46+
"contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/myAssignment/myAssignment.0.0.3.zip",
47+
"contentHash": "content hash",
48+
"configurationParameter": [],
49+
"configurationSetting": null
50+
},
51+
"provisioningState": null
52+
}
53+
}
54+
]
55+
},
56+
"204": {}
57+
}
58+
}

specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2018-11-20/guestconfiguration.json

Lines changed: 173 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,105 @@
200200
]
201201
}
202202
},
203+
"/subscriptions/{subscriptionId}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments": {
204+
"get": {
205+
"tags": [
206+
"GuestConfigurationAssignments"
207+
],
208+
"operationId": "GuestConfigurationAssignments_SubscriptionList",
209+
"description": "List all guest configuration assignments for a subscription.",
210+
"x-ms-examples": {
211+
"List all guest configuration assignments for a subscription": {
212+
"$ref": "./examples/listSubGuestConfigurationAssignments.json"
213+
}
214+
},
215+
"parameters": [
216+
{
217+
"$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter"
218+
},
219+
{
220+
"$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter"
221+
}
222+
],
223+
"responses": {
224+
"200": {
225+
"description": "OK",
226+
"schema": {
227+
"$ref": "#/definitions/GuestConfigurationAssignmentList"
228+
}
229+
},
230+
"204": {
231+
"description": "No Content"
232+
},
233+
"default": {
234+
"description": "Error response describing why the operation failed.",
235+
"schema": {
236+
"$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse"
237+
}
238+
}
239+
},
240+
"x-ms-pageable": {
241+
"nextLinkName": null
242+
},
243+
"produces": [
244+
"application/json"
245+
],
246+
"consumes": [
247+
"application/json"
248+
]
249+
}
250+
},
251+
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments": {
252+
"get": {
253+
"tags": [
254+
"GuestConfigurationAssignments"
255+
],
256+
"operationId": "GuestConfigurationAssignments_RGList",
257+
"description": "List all guest configuration assignments for a resource group.",
258+
"x-ms-examples": {
259+
"List all guest configuration assignments for a resource group": {
260+
"$ref": "./examples/listRGGuestConfigurationAssignments.json"
261+
}
262+
},
263+
"parameters": [
264+
{
265+
"$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter"
266+
},
267+
{
268+
"$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter"
269+
},
270+
{
271+
"$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter"
272+
}
273+
],
274+
"responses": {
275+
"200": {
276+
"description": "OK",
277+
"schema": {
278+
"$ref": "#/definitions/GuestConfigurationAssignmentList"
279+
}
280+
},
281+
"204": {
282+
"description": "No Content"
283+
},
284+
"default": {
285+
"description": "Error response describing why the operation failed.",
286+
"schema": {
287+
"$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse"
288+
}
289+
}
290+
},
291+
"x-ms-pageable": {
292+
"nextLinkName": null
293+
},
294+
"produces": [
295+
"application/json"
296+
],
297+
"consumes": [
298+
"application/json"
299+
]
300+
}
301+
},
203302
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments": {
204303
"get": {
205304
"tags": [
@@ -806,6 +905,12 @@
806905
"type": "string",
807906
"description": "Uri of the storage where guest configuration package is uploaded."
808907
},
908+
"contentType": {
909+
"type": "string",
910+
"readOnly": true,
911+
"description": "Specifies the content type of the configuration. Possible values could be Builtin or Custom.",
912+
"x-nullable": true
913+
},
809914
"contentHash": {
810915
"type": "string",
811916
"description": "Combined hash of the guest configuration package and configuration parameters."
@@ -831,6 +936,13 @@
831936
},
832937
"description": "The configuration parameters for the guest configuration."
833938
},
939+
"configurationProtectedParameter": {
940+
"type": "array",
941+
"items": {
942+
"$ref": "#/definitions/ConfigurationParameter"
943+
},
944+
"description": "The protected configuration parameters for the guest configuration."
945+
},
834946
"configurationSetting": {
835947
"$ref": "#/definitions/ConfigurationSetting",
836948
"description": "The configuration setting for the guest configuration."
@@ -938,6 +1050,20 @@
9381050
"description": "Id of the latest report for the guest configuration assignment. ",
9391051
"x-nullable": true
9401052
},
1053+
"vmssVMList": {
1054+
"type": "array",
1055+
"x-nullable": true,
1056+
"items": {
1057+
"$ref": "#/definitions/VMSSVMInfo"
1058+
},
1059+
"description": "The list of VM Compliance data for VMSS"
1060+
},
1061+
"parameterHash": {
1062+
"type": "string",
1063+
"readOnly": true,
1064+
"description": "parameter hash for the guest configuration assignment. ",
1065+
"x-nullable": true
1066+
},
9411067
"context": {
9421068
"type": "string",
9431069
"description": "The source which initiated the guest configuration assignment. Ex: Azure Policy"
@@ -1043,6 +1169,11 @@
10431169
"$ref": "#/definitions/AssignmentReportDetails",
10441170
"description": "Details of the assignment report.",
10451171
"x-nullable": true
1172+
},
1173+
"vmssResourceId": {
1174+
"type": "string",
1175+
"readOnly": true,
1176+
"description": "Azure resource Id of the VMSS."
10461177
}
10471178
},
10481179
"description": "Report for the guest configuration assignment. Report contains information such as compliance status, reason, and more."
@@ -1192,6 +1323,48 @@
11921323
}
11931324
},
11941325
"description": "Reason and code for the compliance of the guest configuration assignment resource."
1326+
},
1327+
"VMSSVMInfo": {
1328+
"properties": {
1329+
"vmId": {
1330+
"type": "string",
1331+
"readOnly": true,
1332+
"description": "UUID of the VM."
1333+
},
1334+
"vmResourceId": {
1335+
"type": "string",
1336+
"readOnly": true,
1337+
"description": "Azure resource Id of the VM."
1338+
},
1339+
"complianceStatus": {
1340+
"type": "string",
1341+
"readOnly": true,
1342+
"description": "A value indicating compliance status of the machine for the assigned guest configuration.",
1343+
"x-ms-enum": {
1344+
"name": "complianceStatus",
1345+
"modelAsString": true
1346+
},
1347+
"enum": [
1348+
"Compliant",
1349+
"NonCompliant",
1350+
"Pending"
1351+
]
1352+
},
1353+
"latestReportId": {
1354+
"type": "string",
1355+
"readOnly": true,
1356+
"description": "Id of the latest report for the guest configuration assignment. ",
1357+
"x-nullable": true
1358+
},
1359+
"lastComplianceChecked": {
1360+
"type": "string",
1361+
"format": "date-time",
1362+
"readOnly": true,
1363+
"description": "Date and time when last compliance status was checked.",
1364+
"x-nullable": true
1365+
}
1366+
},
1367+
"description": "Information about VMSS VM"
11951368
}
11961369
},
11971370
"parameters": {}

specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationAssignment.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,15 @@
3939
"latestReportId": null,
4040
"lastComplianceStatusChecked": null,
4141
"context": "Azure policy",
42+
"resourceType": null,
43+
"vmssVMList": null,
4244
"guestConfiguration": {
4345
"kind": null,
4446
"name": "WhitelistedApplication",
4547
"version": "1.0.0.3",
4648
"contentUri": null,
4749
"contentHash": null,
50+
"contentType": null,
4851
"configurationParameter": [
4952
{
5053
"name": "[InstalledApplication]bwhitelistedapp;Name",
@@ -68,12 +71,15 @@
6871
"latestReportId": null,
6972
"lastComplianceStatusChecked": null,
7073
"context": "Azure policy",
74+
"resourceType": null,
75+
"vmssVMList": null,
7176
"guestConfiguration": {
7277
"kind": null,
7378
"name": "WhitelistedApplication",
7479
"version": "1.0.0.3",
7580
"contentUri": null,
7681
"contentHash": null,
82+
"contentType": null,
7783
"configurationParameter": [
7884
{
7985
"name": "[InstalledApplication]bwhitelistedapp;Name",

specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,15 @@
3939
"latestReportId": "a2a64e5d-a1a9-4344-a866-fb9e1541f723",
4040
"lastComplianceStatusChecked": null,
4141
"context": "Azure policy",
42+
"resourceType": null,
43+
"vmssVMList": null,
4244
"guestConfiguration": {
4345
"kind": null,
4446
"name": "WhitelistedApplication",
4547
"version": "1.0.0.3",
4648
"contentUri": null,
4749
"contentHash": null,
50+
"contentType": null,
4851
"configurationParameter": [
4952
{
5053
"name": "[InstalledApplication]bwhitelistedapp;Name",
@@ -68,12 +71,15 @@
6871
"latestReportId": "a2a64e5d-a1a9-4344-a866-fb9e1541f723",
6972
"lastComplianceStatusChecked": null,
7073
"context": "Azure policy",
74+
"resourceType": null,
75+
"vmssVMList": null,
7176
"guestConfiguration": {
7277
"kind": null,
7378
"name": "WhitelistedApplication",
7479
"version": "1.0.0.3",
7580
"contentUri": null,
7681
"contentHash": null,
82+
"contentType": null,
7783
"configurationParameter": [
7884
{
7985
"name": "[InstalledApplication]bwhitelistedapp;Name",

0 commit comments

Comments
 (0)