diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/common/v1/definitions.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/common/v1/definitions.json index 16d1fbc0a876..5f24ac963d0a 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/common/v1/definitions.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/common/v1/definitions.json @@ -187,6 +187,7 @@ "in": "path", "required": true, "type": "string", + "pattern": "^[a-zA-Z0-9][-a-zA-Z0-9_.]*[a-zA-Z0-9]$", "description": "The name of the virtual machine.", "x-ms-parameter-location": "method" }, diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationConnectedVMwarevSphereAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationConnectedVMwarevSphereAssignment.json new file mode 100644 index 000000000000..b47eedbf17f2 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/createOrUpdateGuestConfigurationConnectedVMwarevSphereAssignment.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "NotInstalledApplicationForWindows", + "api-version": "2020-06-25", + "parameters": { + "location": "westcentralus", + "name": "NotInstalledApplicationForWindows", + "properties": { + "context": "Azure policy", + "guestConfiguration": { + "name": "NotInstalledApplicationForWindows", + "version": "1.*", + "contentUri": "https://thisisfake/pacakge", + "contentHash": "123contenthash", + "assignmentType": "ApplyAndAutoCorrect", + "configurationParameter": [ + { + "name": "[InstalledApplication]NotInstalledApplicationResource1;Name", + "value": "NotePad,sql" + } + ] + } + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "location": "westcentralus", + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/NotInstalledApplicationForWindows", + "name": "NotInstalledApplicationForWindows", + "properties": { + "complianceStatus": "Pending", + "assignmentHash": null, + "latestReportId": null, + "lastComplianceStatusChecked": null, + "context": "Azure policy", + "resourceType": null, + "vmssVMList": null, + "guestConfiguration": { + "kind": null, + "name": "NotInstalledApplicationForWindows", + "version": "1.0.0.3", + "contentUri": null, + "contentHash": null, + "contentType": null, + "configurationParameter": [ + { + "name": "[InstalledApplication]NotInstalledApplicationResource1;Name", + "value": "NotePad,sql" + } + ] + }, + "provisioningState": "Succeeded" + } + } + }, + "200": { + "headers": {}, + "body": { + "location": "westcentralus", + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/NotInstalledApplicationForWindows", + "name": "NotInstalledApplicationForWindows", + "properties": { + "complianceStatus": "Pending", + "assignmentHash": null, + "latestReportId": null, + "lastComplianceStatusChecked": null, + "context": "Azure policy", + "resourceType": null, + "vmssVMList": null, + "guestConfiguration": { + "kind": null, + "name": "NotInstalledApplicationForWindows", + "version": "1.0.0.3", + "contentUri": null, + "contentHash": null, + "contentType": null, + "configurationParameter": [ + { + "name": "[InstalledApplication]NotInstalledApplicationResource1;Name", + "value": "NotePad,sql" + } + ] + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/deleteGuestConfigurationConnectedVMwarevSphereAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/deleteGuestConfigurationConnectedVMwarevSphereAssignment.json new file mode 100644 index 000000000000..d89743c6d2b2 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/deleteGuestConfigurationConnectedVMwarevSphereAssignment.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "SecureProtocol", + "api-version": "2020-06-25" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignment.json new file mode 100644 index 000000000000..a92bff8c06d1 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignment.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "SecureProtocol", + "api-version": "2020-06-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol", + "name": "AuditSecureProtocol", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "E0D8941DD713F284284561648C00C18FA76C8602943C7CD38AFD73B56AE4C35F.E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "AuditSecureProtocol", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol/AuditSecureProtocol_1.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignmentReportById.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignmentReportById.json new file mode 100644 index 000000000000..b64cebe47560 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignmentReportById.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionid", + "resourceGroupName": "myResourceGroupName", + "vmName": "myvm", + "guestConfigurationAssignmentName": "AuditSecureProtocol", + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "api-version": "2020-06-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "name": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol", + "version": "1.0.0.0" + } + }, + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm", + "uuid": "vmuuid" + }, + "details": { + "complianceStatus": "Compliant", + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z", + "jobId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "resources": [ + { + "complianceStatus": "Compliant", + "reasons": [ + { + "phrase": "Operation successful.", + "code": "DSC::RESOURCE::SUCCESS" + } + ], + "properties": { + "ConfigurationName": "IsWebServerSecure", + "DependsOn": null, + "IsSingleInstance": "Yes", + "ModuleName": "SecureProtocolWebServer", + "ModuleVersion": "1.0.0.3", + "Protocols": [ + { + "Ensure": "Absent", + "Protocol": "SSL 2.0" + }, + { + "Ensure": "Absent", + "Protocol": "SSL 3.0" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.0" + }, + { + "Ensure": "Absent", + "Protocol": "PCT 1.0" + }, + { + "Ensure": "Absent", + "Protocol": "Multi-Protocol Unified Hello" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.1" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.2" + } + ], + "PsDscRunAsCredential": null, + "Reasons": null, + "ResourceId": "[SecureWebServer]s1", + "SourceInfo": null + } + } + ], + "operationType": "Consistency" + }, + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/listAllGuestConfigurationConnectedVMwarevSphereAssignmentsReports.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/listAllGuestConfigurationConnectedVMwarevSphereAssignmentsReports.json new file mode 100644 index 000000000000..3c1044a09a3b --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/listAllGuestConfigurationConnectedVMwarevSphereAssignmentsReports.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionid", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "AuditSecureProtocol", + "api-version": "2020-06-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "name": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol" + } + }, + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm", + "uuid": "vmuuid" + }, + "details": null, + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z" + } + }, + { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "name": "41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol" + } + }, + "reportId": "41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm", + "uuid": "vmuuid" + }, + "details": null, + "startTime": "2018-08-29T20:13:53Z", + "endTime": "2018-08-29T20:14:13Z" + } + } + ] + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/listGuestConfigurationConnectedVMwarevSphereAssignments.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/listGuestConfigurationConnectedVMwarevSphereAssignments.json new file mode 100644 index 000000000000..eb671c962cbf --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/examples/listGuestConfigurationConnectedVMwarevSphereAssignments.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "api-version": "2020-06-25" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2", + "name": "AuditSecureProtocol2", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "content hash", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "AuditSecureProtocol2", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol2/AuditSecureProtocol2_1.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": null + } + }, + { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment", + "name": "myAssignment", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "content hash", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "myAssignment", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/myAssignment/myAssignment.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": null + } + } + ] + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/guestconfiguration.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/guestconfiguration.json index 29dd0014aacf..369fd225c3c3 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/guestconfiguration.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2020-06-25/guestconfiguration.json @@ -808,6 +808,355 @@ ] } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}": { + "put": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignments" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignments_CreateOrUpdate", + "description": "Creates an association between a Connected VM Sphere machine and guest configuration", + "x-ms-examples": { + "Create or update guest configuration assignment": { + "$ref": "./examples/createOrUpdateGuestConfigurationConnectedVMwarevSphereAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[^<>%&:\\\\?/#]*$", + "description": "Name of the guest configuration assignment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + }, + "description": "Parameters supplied to the create or update guest configuration assignment." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created. The guest configuration assignment for the Connected VM Sphere machine was created successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "200": { + "description": "OK. The guest configuration assignment for the Connected VM Sphere machine was updated successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "get": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignments" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignments_Get", + "description": "Get information about a guest configuration assignment", + "x-ms-examples": { + "Get a guest configuration assignment": { + "$ref": "./examples/getGuestConfigurationConnectedVMwarevSphereAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[^<>%&:\\\\?/#]*$", + "description": "The guest configuration assignment name." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The guest configuration assignment was returned successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignments" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignments_Delete", + "description": "Delete a guest configuration assignment", + "x-ms-examples": { + "Delete an guest configuration assignment": { + "$ref": "./examples/deleteGuestConfigurationConnectedVMwarevSphereAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[^<>%&:\\\\?/#]*$", + "description": "Name of the guest configuration assignment" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments": { + "get": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignments" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignments_List", + "description": "List all guest configuration assignments for an ARC machine.", + "x-ms-examples": { + "List all guest configuration assignments for a virtual machine": { + "$ref": "./examples/listGuestConfigurationConnectedVMwarevSphereAssignments.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}/reports": { + "get": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignmentsReports" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignmentsReports_List", + "description": "List all reports for the guest configuration assignment, latest report first.", + "x-ms-examples": { + "List all guest configuration assignments for a virtual machine": { + "$ref": "./examples/listAllGuestConfigurationConnectedVMwarevSphereAssignmentsReports.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[^<>%&:\\\\?/#]*$", + "description": "The guest configuration assignment name." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. This response is due one of these two reasons: 1. Reports were returned successfully 2. Guest configuration assignment was found, but machine is not registered yet, hence no reports returned.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentReportList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}/reports/{reportId}": { + "get": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignmentsReports" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignmentsReports_Get", + "description": "Get a report for the guest configuration assignment, by reportId.", + "x-ms-examples": { + "Get a guest configuration assignment report by Id for a virtual machine": { + "$ref": "./examples/getGuestConfigurationConnectedVMwarevSphereAssignmentReportById.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[^<>%&:\\\\?/#]*$", + "description": "The guest configuration assignment name." + }, + { + "name": "reportId", + "in": "path", + "required": true, + "type": "string", + "description": "The GUID for the guest configuration assignment report." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. This response is due one of these two reasons: 1. Report was returned successfully 2. Guest configuration assignment was found, but machine is not registered yet, hence no report was returned.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, "/providers/Microsoft.GuestConfiguration/operations": { "get": { "tags": [ diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationAssignment.json index c8200263ac9a..b2a7ef7fb2f6 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationAssignment.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationAssignment.json @@ -12,7 +12,7 @@ "context": "Azure policy", "guestConfiguration": { "name": "NotInstalledApplicationForWindows", - "version": "1.*", + "version": "1.0.0.3", "contentUri": "https://thisisfake/pacakge", "contentHash": "123contenthash", "assignmentType": "ApplyAndAutoCorrect", diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationConnectedVMwarevSphereAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationConnectedVMwarevSphereAssignment.json new file mode 100644 index 000000000000..74694808b9fc --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationConnectedVMwarevSphereAssignment.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "NotInstalledApplicationForWindows", + "api-version": "2022-01-25", + "parameters": { + "location": "westcentralus", + "name": "NotInstalledApplicationForWindows", + "properties": { + "context": "Azure policy", + "guestConfiguration": { + "name": "NotInstalledApplicationForWindows", + "version": "1.0.0.0", + "contentUri": "https://thisisfake/pacakge", + "contentHash": "123contenthash", + "assignmentType": "ApplyAndAutoCorrect", + "configurationParameter": [ + { + "name": "[InstalledApplication]NotInstalledApplicationResource1;Name", + "value": "NotePad,sql" + } + ] + } + } + } + }, + "responses": { + "201": { + "headers": {}, + "body": { + "location": "westcentralus", + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/NotInstalledApplicationForWindows", + "name": "NotInstalledApplicationForWindows", + "properties": { + "complianceStatus": "Pending", + "assignmentHash": null, + "latestReportId": null, + "lastComplianceStatusChecked": null, + "context": "Azure policy", + "resourceType": null, + "vmssVMList": null, + "guestConfiguration": { + "kind": null, + "name": "NotInstalledApplicationForWindows", + "version": "1.0.0.3", + "contentUri": null, + "contentHash": null, + "contentType": null, + "assignmentSource": "AzurePolicy", + "configurationParameter": [ + { + "name": "[InstalledApplication]NotInstalledApplicationResource1;Name", + "value": "NotePad,sql" + } + ] + }, + "provisioningState": "Succeeded" + } + } + }, + "200": { + "headers": {}, + "body": { + "location": "westcentralus", + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/NotInstalledApplicationForWindows", + "name": "NotInstalledApplicationForWindows", + "properties": { + "complianceStatus": "Pending", + "assignmentHash": null, + "latestReportId": null, + "lastComplianceStatusChecked": null, + "context": "Azure policy", + "resourceType": null, + "vmssVMList": null, + "guestConfiguration": { + "kind": null, + "name": "NotInstalledApplicationForWindows", + "version": "1.0.0.3", + "contentUri": null, + "contentHash": null, + "contentType": null, + "assignmentSource": "AzurePolicy", + "configurationParameter": [ + { + "name": "[InstalledApplication]NotInstalledApplicationResource1;Name", + "value": "NotePad,sql" + } + ] + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json index 69bbf5b3775f..e7babb91afee 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationHCRPAssignment.json @@ -12,7 +12,7 @@ "context": "Azure policy", "guestConfiguration": { "name": "NotInstalledApplicationForWindows", - "version": "1.*", + "version": "1.0.0.3", "contentUri": "https://thisisfake/pacakge", "contentHash": "123contenthash", "assignmentType": "ApplyAndAutoCorrect", diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationVMSSAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationVMSSAssignment.json index e82e16f13185..fe8c1028f63b 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationVMSSAssignment.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/createOrUpdateGuestConfigurationVMSSAssignment.json @@ -12,7 +12,7 @@ "context": "Azure policy", "guestConfiguration": { "name": "NotInstalledApplicationForWindows", - "version": "1.*", + "version": "1.0.0.3", "contentUri": "https://thisisfake/pacakge", "contentHash": "123contenthash", "assignmentType": "ApplyAndAutoCorrect", diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/deleteGuestConfigurationConnectedVMwarevSphereAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/deleteGuestConfigurationConnectedVMwarevSphereAssignment.json new file mode 100644 index 000000000000..def86c85bbc5 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/deleteGuestConfigurationConnectedVMwarevSphereAssignment.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "SecureProtocol", + "api-version": "2022-01-25" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignment.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignment.json new file mode 100644 index 000000000000..e7be37ff91aa --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignment.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "SecureProtocol", + "api-version": "2022-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol", + "name": "AuditSecureProtocol", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "E0D8941DD713F284284561648C00C18FA76C8602943C7CD38AFD73B56AE4C35F.E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "AuditSecureProtocol", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol/AuditSecureProtocol_1.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignmentReportById.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignmentReportById.json new file mode 100644 index 000000000000..d7be03070cce --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/getGuestConfigurationConnectedVMwarevSphereAssignmentReportById.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionid", + "resourceGroupName": "myResourceGroupName", + "vmName": "myvm", + "guestConfigurationAssignmentName": "AuditSecureProtocol", + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "api-version": "2022-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "name": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol", + "version": "1.0.0.0" + } + }, + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm", + "uuid": "vmuuid" + }, + "details": { + "complianceStatus": "Compliant", + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z", + "jobId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "resources": [ + { + "complianceStatus": "Compliant", + "reasons": [ + { + "phrase": "Operation successful.", + "code": "DSC::RESOURCE::SUCCESS" + } + ], + "properties": { + "ConfigurationName": "IsWebServerSecure", + "DependsOn": null, + "IsSingleInstance": "Yes", + "ModuleName": "SecureProtocolWebServer", + "ModuleVersion": "1.0.0.3", + "Protocols": [ + { + "Ensure": "Absent", + "Protocol": "SSL 2.0" + }, + { + "Ensure": "Absent", + "Protocol": "SSL 3.0" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.0" + }, + { + "Ensure": "Absent", + "Protocol": "PCT 1.0" + }, + { + "Ensure": "Absent", + "Protocol": "Multi-Protocol Unified Hello" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.1" + }, + { + "Ensure": "Absent", + "Protocol": "TLS 1.2" + } + ], + "PsDscRunAsCredential": null, + "Reasons": null, + "ResourceId": "[SecureWebServer]s1", + "SourceInfo": null + } + } + ], + "operationType": "Consistency" + }, + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z" + } + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/listAllGuestConfigurationConnectedVMwarevSphereAssignmentsReports.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/listAllGuestConfigurationConnectedVMwarevSphereAssignmentsReports.json new file mode 100644 index 000000000000..43f6c876224f --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/listAllGuestConfigurationConnectedVMwarevSphereAssignmentsReports.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionid", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "guestConfigurationAssignmentName": "AuditSecureProtocol", + "api-version": "2022-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "name": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol" + } + }, + "reportId": "7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm", + "uuid": "vmuuid" + }, + "details": null, + "startTime": "2018-08-29T22:13:53Z", + "endTime": "2018-08-29T22:14:13Z" + } + }, + { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol/reports/41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "name": "41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "properties": { + "complianceStatus": "Compliant", + "assignment": { + "name": "AuditSecureProtocol", + "configuration": { + "name": "AuditSecureProtocol" + } + }, + "reportId": "41ee2caf-48f9-4999-a793-82ec7c6beb2c", + "vm": { + "id": "/subscriptions/mysubscriptionid/resourceGroups/myResourceGroupName/providers/Microsoft.Connectedvmwarevsphere/virtualmachines/myvm", + "uuid": "vmuuid" + }, + "details": null, + "startTime": "2018-08-29T20:13:53Z", + "endTime": "2018-08-29T20:14:13Z" + } + } + ] + } + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/listGuestConfigurationConnectedVMwarevSphereAssignments.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/listGuestConfigurationConnectedVMwarevSphereAssignments.json new file mode 100644 index 000000000000..516f34af2a59 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/examples/listGuestConfigurationConnectedVMwarevSphereAssignments.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "mySubscriptionId", + "resourceGroupName": "myResourceGroupName", + "vmName": "myVMName", + "api-version": "2022-01-25" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2", + "name": "AuditSecureProtocol2", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "content hash", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/AuditSecureProtocol2/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "AuditSecureProtocol2", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/AuditSecureProtocol2/AuditSecureProtocol2_1.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": null + } + }, + { + "location": "centraluseuap", + "id": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment", + "name": "myAssignment", + "properties": { + "complianceStatus": "Compliant", + "assignmentHash": "content hash", + "latestReportId": "/subscriptions/subscriptionId/resourceGroups/myResourceGroupName/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/myvm/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/myAssignment/reports/7367cbb8-ae99-47d0-a33b-a283564d2cb1", + "lastComplianceStatusChecked": "2018-08-29T22:14:13Z", + "context": null, + "guestConfiguration": { + "kind": null, + "name": "myAssignment", + "version": "1.0.0.3", + "contentUri": "https://mystorageaccount.blob.core.windows.net/builtinconfig/myAssignment/myAssignment.0.0.3.zip", + "contentHash": "content hash", + "configurationParameter": [], + "configurationSetting": null + }, + "provisioningState": null + } + } + ] + } + } +} diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/guestconfiguration.json b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/guestconfiguration.json index a3dc6dbf28d9..9ef4a177656e 100644 --- a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/guestconfiguration.json +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/guestconfiguration.json @@ -1158,6 +1158,355 @@ ] } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}": { + "put": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignments" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignments_CreateOrUpdate", + "description": "Creates an association between a Connected VM Sphere machine and guest configuration", + "x-ms-examples": { + "Create or update guest configuration assignment": { + "$ref": "./examples/createOrUpdateGuestConfigurationConnectedVMwarevSphereAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[^<>%&:\\\\?/#]*$", + "description": "Name of the guest configuration assignment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + }, + "description": "Parameters supplied to the create or update guest configuration assignment." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created. The guest configuration assignment for the Connected VM Sphere machine was created successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "200": { + "description": "OK. The guest configuration assignment for the Connected VM Sphere machine was updated successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "get": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignments" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignments_Get", + "description": "Get information about a guest configuration assignment", + "x-ms-examples": { + "Get a guest configuration assignment": { + "$ref": "./examples/getGuestConfigurationConnectedVMwarevSphereAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[^<>%&:\\\\?/#]*$", + "description": "The guest configuration assignment name." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The guest configuration assignment was returned successfully.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignments" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignments_Delete", + "description": "Delete a guest configuration assignment", + "x-ms-examples": { + "Delete an guest configuration assignment": { + "$ref": "./examples/deleteGuestConfigurationConnectedVMwarevSphereAssignment.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[^<>%&:\\\\?/#]*$", + "description": "Name of the guest configuration assignment" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments": { + "get": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignments" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignments_List", + "description": "List all guest configuration assignments for an ARC machine.", + "x-ms-examples": { + "List all guest configuration assignments for a virtual machine": { + "$ref": "./examples/listGuestConfigurationConnectedVMwarevSphereAssignments.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}/reports": { + "get": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignmentsReports" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignmentsReports_List", + "description": "List all reports for the guest configuration assignment, latest report first.", + "x-ms-examples": { + "List all guest configuration assignments for a virtual machine": { + "$ref": "./examples/listAllGuestConfigurationConnectedVMwarevSphereAssignmentsReports.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[^<>%&:\\\\?/#]*$", + "description": "The guest configuration assignment name." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. This response is due one of these two reasons: 1. Reports were returned successfully 2. Guest configuration assignment was found, but machine is not registered yet, hence no reports returned.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentReportList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConnectedVMwarevSphere/virtualmachines/{vmName}/providers/Microsoft.GuestConfiguration/guestConfigurationAssignments/{guestConfigurationAssignmentName}/reports/{reportId}": { + "get": { + "tags": [ + "GuestConfigurationConnectedVMwarevSphereAssignmentsReports" + ], + "operationId": "GuestConfigurationConnectedVMwarevSphereAssignmentsReports_Get", + "description": "Get a report for the guest configuration assignment, by reportId.", + "x-ms-examples": { + "Get a guest configuration assignment report by Id for a virtual machine": { + "$ref": "./examples/getGuestConfigurationConnectedVMwarevSphereAssignmentReportById.json" + } + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/VmNameParameter" + }, + { + "name": "guestConfigurationAssignmentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[^<>%&:\\\\?/#]*$", + "description": "The guest configuration assignment name." + }, + { + "name": "reportId", + "in": "path", + "required": true, + "type": "string", + "description": "The GUID for the guest configuration assignment report." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. This response is due one of these two reasons: 1. Report was returned successfully 2. Guest configuration assignment was found, but machine is not registered yet, hence no report was returned.", + "schema": { + "$ref": "#/definitions/GuestConfigurationAssignmentReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + } + }, "/providers/Microsoft.GuestConfiguration/operations": { "get": { "tags": [ diff --git a/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/scenarios/GuestAssignmentTests.yaml b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/scenarios/GuestAssignmentTests.yaml new file mode 100644 index 000000000000..dff7eae2cf44 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/Microsoft.GuestConfiguration/stable/2022-01-25/scenarios/GuestAssignmentTests.yaml @@ -0,0 +1,188 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/Azure/azure-rest-api-specs/main/documentation/api-scenario/references/v1.2/schema.json +scope: ResourceGroup +variables: + guestConfigurationAssignmentName: + type: string + prefix: guestcon + vmName: + type: string + prefix: vmname + vmssName: + type: string + prefix: vmssname + name: + type: string + prefix: name + adminPassword: + type: secureString + prefix: Admin@1 + +prepareSteps: + - step: createVirtualNetwork + operationId: VirtualNetworks_CreateOrUpdate + readmeTag: ../../../../../../network/resource-manager/readme.md#package-2021-05 + parameters: + virtualNetworkName: $(vmName)-VNET + parameters: + location: $(location) + properties: + addressSpace: + addressPrefixes: + - 10.0.0.0/16 + subnets: + - name: $(vmName)-Subnet + properties: + addressPrefix: 10.0.0.0/24 + outputVariables: + subnetId: + type: string + fromResponse: /properties/subnets/0/id + - step: createNSG + operationId: NetworkSecurityGroups_CreateOrUpdate + readmeTag: ../../../../../../network/resource-manager/readme.md#package-2021-05 + parameters: + networkSecurityGroupName: $(vmName)-NSG + parameters: + location: $(location) + properties: + securityRules: + - name: rdp + properties: + protocol: Tcp + sourcePortRange: "*" + destinationPortRange: "3389" + sourceAddressPrefix: "*" + destinationAddressPrefix: "*" + access: Allow + priority: 1000 + direction: Inbound + outputVariables: + networkSecurityGroupId: + type: string + fromResponse: /id + - step: createPublicIP + operationId: PublicIPAddresses_CreateOrUpdate + readmeTag: ../../../../../../network/resource-manager/readme.md#package-2021-05 + parameters: + publicIpAddressName: $(vmName)-PublicIP + parameters: + location: $(location) + sku: + name: Standard + properties: + publicIPAllocationMethod: Static + outputVariables: + publicIPAddressId: + type: string + fromResponse: /id + - step: createNIC + operationId: NetworkInterfaces_CreateOrUpdate + readmeTag: ../../../../../../network/resource-manager/readme.md#package-2021-05 + parameters: + networkInterfaceName: $(vmName)-VMNic + parameters: + location: $(location) + properties: + ipConfigurations: + - name: ipconfig-$(vmName) + properties: + privateIPAllocationMethod: Dynamic + subnet: + id: $(subnetId) + publicIpAddress: + id: $(publicIPAddressId) + networkSecurityGroup: + id: $(networkSecurityGroupId) + outputVariables: + vmNicId: + type: string + fromResponse: /id + - step: createVirtualMachine + operationId: VirtualMachines_CreateOrUpdate + readmeTag: ../../../../../../compute/resource-manager/readme.md#package-2022-11-01 + parameters: + vmName: $(vmName) + parameters: + location: $(location) + properties: + hardwareProfile: + vmSize: Standard_A2_v2 + networkProfile: + networkInterfaces: + - id: $(vmNicId) + storageProfile: + osDisk: + createOption: fromImage + caching: ReadWrite + imageReference: + publisher: MicrosoftWindowsServer + offer: WindowsServer + sku: 2019-Datacenter + version: latest + osProfile: + computerName: $(vmName) + adminUsername: azureuser + adminPassword: $(adminPassword) + additionalCapabilities: {} + - step: createVirtualMachineScaleSets + operationId: VirtualMachineScaleSets_CreateOrUpdate + readmeTag: ../../../../../../compute/resource-manager/readme.md#package-2022-11-01 + parameters: + vmScaleSetName: $(vmssName) + parameters: + location: $(location) + properties: + overprovision: false + upgradePolicy: + mode: Automatic + automaticOSUpgradePolicy: + enableAutomaticOSUpgrade: false + virtualMachineProfile: + storageProfile: + osDisk: + createOption: fromImage + imageReference: + publisher: MicrosoftWindowsServer + offer: WindowsServer + sku: 2019-Datacenter + version: latest + osProfile: + computerNamePrefix: vmss + adminUsername: $(vmssName) + adminPassword: $(adminPassword) + networkProfile: + networkInterfaceConfigurations: + - name: $(vmssName) + properties: + primary: true + ipConfigurations: + - name: ipconfig-$(vmssName) + properties: + subnet: + id: $(subnetId) + sku: + name: Standard_A1_v2 + capacity: 1 + tier: Standard +scenarios: + - scenario: GeneratedScenario + steps: + - operationId: GuestConfigurationAssignments_CreateOrUpdate + exampleFile: ../../2022-01-25/examples/createOrUpdateGuestConfigurationAssignment.json + - operationId: GuestConfigurationAssignments_SubscriptionList + exampleFile: ../../2022-01-25/examples/listSubGuestConfigurationAssignments.json + - operationId: GuestConfigurationAssignments_RGList + exampleFile: ../../2022-01-25/examples/listRGGuestConfigurationAssignments.json + - operationId: Operations_List + exampleFile: ../../2022-01-25/examples/listOperations.json + - operationId: GuestConfigurationAssignments_Get + exampleFile: ../../2022-01-25/examples/getGuestConfigurationAssignment.json + - operationId: GuestConfigurationAssignments_List + exampleFile: ../../2022-01-25/examples/listGuestConfigurationAssignments.json + - operationId: GuestConfigurationAssignments_Delete + exampleFile: ../../2022-01-25/examples/deleteGuestConfigurationAssignment.json + - operationId: GuestConfigurationAssignmentsVMSS_CreateOrUpdate + exampleFile: ../../2022-01-25/examples/createOrUpdateGuestConfigurationVMSSAssignment.json + - operationId: GuestConfigurationAssignmentsVMSS_Get + exampleFile: ../../2022-01-25/examples/getVMSSGuestConfigurationAssignment.json + \ No newline at end of file diff --git a/specification/guestconfiguration/resource-manager/readme.test.md b/specification/guestconfiguration/resource-manager/readme.test.md new file mode 100644 index 000000000000..e4ed4fc221f8 --- /dev/null +++ b/specification/guestconfiguration/resource-manager/readme.test.md @@ -0,0 +1,8 @@ +### Tag: package-2022-01-25 + +These settings apply only when `--tag=package-2022-01-25` is specified on the command line. + +```yaml $(tag) == 'package-2022-01-25' +test-resources: + - Microsoft.GuestConfiguration/stable/2022-01-25/scenarios/GuestAssignmentTests.yaml +``` \ No newline at end of file