diff --git a/custom-words.txt b/custom-words.txt
index 37be89395e83..3975c8c3cfe6 100644
--- a/custom-words.txt
+++ b/custom-words.txt
@@ -402,6 +402,7 @@ credativ
Creds
crossdomain
cscfg
+csdef
csname
CSRP
csrs
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/cloudService.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/cloudService.json
new file mode 100644
index 000000000000..fc8b803a8813
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/cloudService.json
@@ -0,0 +1,2684 @@
+{
+ "swagger": "2.0",
+ "info": {
+ "title": "CloudServiceManagementClient",
+ "description": "The Cloud Service Management Client.",
+ "version": "2021-03-01"
+ },
+ "host": "management.azure.com",
+ "schemes": [
+ "https"
+ ],
+ "paths": {
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}": {
+ "delete": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "Deletes a role instance from a cloud service.",
+ "operationId": "CloudServiceRoleInstances_Delete",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Cloud Service Role Instance": {
+ "$ref": "./examples/DeleteCloudServiceRoleInstance.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "Gets a role instance from a cloud service.",
+ "operationId": "CloudServiceRoleInstances_Get",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "query",
+ "name": "$expand",
+ "description": "The expand expression to apply to the operation.",
+ "type": "string",
+ "enum": [
+ "instanceView"
+ ],
+ "x-ms-enum": {
+ "name": "InstanceViewTypes",
+ "modelAsString": false
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RoleInstance"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service Role Instance": {
+ "$ref": "./examples/GetCloudServiceRoleInstance.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/instanceView": {
+ "get": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "Retrieves information about the run-time state of a role instance in a cloud service.",
+ "operationId": "CloudServiceRoleInstances_GetInstanceView",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RoleInstanceInstanceView"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Instance View of Cloud Service Role Instance": {
+ "$ref": "./examples/GetInstanceViewOfCloudServiceRoleInstance.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances": {
+ "get": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "Gets the list of all role instances in a cloud service. Use nextLink property in the response to get the next page of role instances. Do this till nextLink is null to fetch all the role instances.",
+ "operationId": "CloudServiceRoleInstances_List",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "query",
+ "name": "$expand",
+ "description": "The expand expression to apply to the operation.",
+ "type": "string",
+ "enum": [
+ "instanceView"
+ ],
+ "x-ms-enum": {
+ "name": "InstanceViewTypes",
+ "modelAsString": false
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/RoleInstanceListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Role Instances in a Cloud Service": {
+ "$ref": "./examples/ListCloudServiceRolesInstances.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/restart": {
+ "post": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "The Reboot Role Instance asynchronous operation requests a reboot of a role instance in the cloud service.",
+ "operationId": "CloudServiceRoleInstances_Restart",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Restart Cloud Service Role Instance": {
+ "$ref": "./examples/RestartCloudServiceRoleInstance.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/reimage": {
+ "post": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "The Reimage Role Instance asynchronous operation reinstalls the operating system on instances of web roles or worker roles.",
+ "operationId": "CloudServiceRoleInstances_Reimage",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Reimage Cloud Service Role Instance": {
+ "$ref": "./examples/ReimageCloudServiceRoleInstance.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/rebuild": {
+ "post": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "The Rebuild Role Instance asynchronous operation reinstalls the operating system on instances of web roles or worker roles and initializes the storage resources that are used by them. If you do not want to initialize storage resources, you can use Reimage Role Instance.",
+ "operationId": "CloudServiceRoleInstances_Rebuild",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Rebuild Cloud Service Role Instance": {
+ "$ref": "./examples/RebuildCloudServiceRoleInstance.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/remoteDesktopFile": {
+ "get": {
+ "tags": [
+ "CloudServiceRoleInstances"
+ ],
+ "description": "Gets a remote desktop file for a role instance in a cloud service.",
+ "operationId": "CloudServiceRoleInstances_GetRemoteDesktopFile",
+ "produces": [
+ "application/x-rdp"
+ ],
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleInstanceName",
+ "description": "Name of the role instance.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "format": "binary",
+ "type": "file"
+ }
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roles/{roleName}": {
+ "get": {
+ "tags": [
+ "CloudServiceRoles"
+ ],
+ "description": "Gets a role from a cloud service.",
+ "operationId": "CloudServiceRoles_Get",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "roleName",
+ "description": "Name of the role.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceRole"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service Role": {
+ "$ref": "./examples/GetCloudServiceRole.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roles": {
+ "get": {
+ "tags": [
+ "CloudServiceRoles"
+ ],
+ "description": "Gets a list of all roles in a cloud service. Use nextLink property in the response to get the next page of roles. Do this till nextLink is null to fetch all the roles.",
+ "operationId": "CloudServiceRoles_List",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceRoleListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Roles in a Cloud Service": {
+ "$ref": "./examples/ListCloudServiceRoles.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}": {
+ "put": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Create or update a cloud service. Please note some properties can be set only during cloud service creation.",
+ "operationId": "CloudServices_CreateOrUpdate",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "The cloud service object.",
+ "schema": {
+ "$ref": "#/definitions/CloudService"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudService"
+ }
+ },
+ "201": {
+ "description": "Created",
+ "schema": {
+ "$ref": "#/definitions/CloudService"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Create New Cloud Service with Single Role": {
+ "$ref": "./examples/CreateCloudServiceWithSingleRole.json"
+ },
+ "Create New Cloud Service with Single Role and RDP Extension": {
+ "$ref": "./examples/CreateCloudServiceWithSingleRoleAndRDP.json"
+ },
+ "Create New Cloud Service with Multiple Roles": {
+ "$ref": "./examples/CreateCloudServiceWithMultiRole.json"
+ },
+ "Create New Cloud Service with Single Role and Certificate from Key Vault": {
+ "$ref": "./examples/CreateCloudServiceWithSingleRoleAndCertificate.json"
+ }
+ }
+ },
+ "patch": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Update a cloud service.",
+ "operationId": "CloudServices_Update",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "The cloud service object.",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceUpdate"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudService"
+ }
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update existing Cloud Service to add tags": {
+ "$ref": "./examples/UpdateCloudServiceToIncludeTags.json"
+ }
+ }
+ },
+ "delete": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Deletes a cloud service.",
+ "operationId": "CloudServices_Delete",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ },
+ "204": {
+ "description": "No Content"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Cloud Service": {
+ "$ref": "./examples/DeleteCloudService.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Display information about a cloud service.",
+ "operationId": "CloudServices_Get",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudService"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service with Multiple Roles and RDP Extension": {
+ "$ref": "./examples/GetCloudServiceWithMultiRoleAndRDP.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/instanceView": {
+ "get": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Gets the status of a cloud service.",
+ "operationId": "CloudServices_GetInstanceView",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceInstanceView"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service Instance View with Multiple Roles": {
+ "$ref": "./examples/GetCloudServiceInstanceViewWithMultiRole.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/cloudServices": {
+ "get": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Gets a list of all cloud services in the subscription, regardless of the associated resource group. Use nextLink property in the response to get the next page of Cloud Services. Do this till nextLink is null to fetch all the Cloud Services.",
+ "operationId": "CloudServices_ListAll",
+ "parameters": [
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Cloud Services in a Subscription": {
+ "$ref": "./examples/ListCloudServicesInSubscription.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices": {
+ "get": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Gets a list of all cloud services under a resource group. Use nextLink property in the response to get the next page of Cloud Services. Do this till nextLink is null to fetch all the Cloud Services.",
+ "operationId": "CloudServices_List",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/CloudServiceListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Cloud Services in a Resource Group": {
+ "$ref": "./examples/ListCloudServicesInResourceGroup.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/start": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Starts the cloud service.",
+ "operationId": "CloudServices_Start",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Start Cloud Service": {
+ "$ref": "./examples/StartCloudService.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/poweroff": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Power off the cloud service. Note that resources are still attached and you are getting charged for the resources.",
+ "operationId": "CloudServices_PowerOff",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Stop or PowerOff Cloud Service": {
+ "$ref": "./examples/PowerOffCloudService.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/restart": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Restarts one or more role instances in a cloud service.",
+ "operationId": "CloudServices_Restart",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "List of cloud service role instance names.",
+ "schema": {
+ "$ref": "#/definitions/RoleInstances"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Restart Cloud Service Role Instances": {
+ "$ref": "./examples/RestartCloudServiceRoleInstances.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/reimage": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Reimage asynchronous operation reinstalls the operating system on instances of web roles or worker roles.",
+ "operationId": "CloudServices_Reimage",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "List of cloud service role instance names.",
+ "schema": {
+ "$ref": "#/definitions/RoleInstances"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Reimage Cloud Service Role Instances": {
+ "$ref": "./examples/ReimageCloudServiceRoleInstances.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/rebuild": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Rebuild Role Instances reinstalls the operating system on instances of web roles or worker roles and initializes the storage resources that are used by them. If you do not want to initialize storage resources, you can use Reimage Role Instances.",
+ "operationId": "CloudServices_Rebuild",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "List of cloud service role instance names.",
+ "schema": {
+ "$ref": "#/definitions/RoleInstances"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Rebuild Cloud Service Role Instances": {
+ "$ref": "./examples/RebuildCloudServiceRoleInstances.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/delete": {
+ "post": {
+ "tags": [
+ "CloudServices"
+ ],
+ "description": "Deletes role instances in a cloud service.",
+ "operationId": "CloudServices_DeleteInstances",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "List of cloud service role instance names.",
+ "schema": {
+ "$ref": "#/definitions/RoleInstances"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Delete Cloud Service Role Instances": {
+ "$ref": "./examples/DeleteCloudServiceRoleInstances.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/updateDomains/{updateDomain}": {
+ "put": {
+ "tags": [
+ "CloudServicesUpdateDomain"
+ ],
+ "description": "Updates the role instances in the specified update domain.",
+ "operationId": "CloudServicesUpdateDomain_WalkUpdateDomain",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "updateDomain",
+ "description": "Specifies an integer value that identifies the update domain. Update domains are identified with a zero-based index: the first update domain has an ID of 0, the second has an ID of 1, and so on.",
+ "required": true,
+ "type": "integer",
+ "format": "int32"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ },
+ {
+ "in": "body",
+ "name": "parameters",
+ "description": "The update domain object.",
+ "schema": {
+ "$ref": "#/definitions/UpdateDomain"
+ }
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK"
+ },
+ "202": {
+ "description": "Accepted"
+ }
+ },
+ "x-ms-long-running-operation": true,
+ "x-ms-examples": {
+ "Update Cloud Service to specified Domain": {
+ "$ref": "./examples/UpdateCloudServiceUpdateDomain.json"
+ }
+ }
+ },
+ "get": {
+ "tags": [
+ "CloudServicesUpdateDomain"
+ ],
+ "description": "Gets the specified update domain of a cloud service. Use nextLink property in the response to get the next page of update domains. Do this till nextLink is null to fetch all the update domains.",
+ "operationId": "CloudServicesUpdateDomain_GetUpdateDomain",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "updateDomain",
+ "description": "Specifies an integer value that identifies the update domain. Update domains are identified with a zero-based index: the first update domain has an ID of 0, the second has an ID of 1, and so on.",
+ "required": true,
+ "type": "integer",
+ "format": "int32"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/UpdateDomain"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service Update Domain": {
+ "$ref": "./examples/GetCloudServiceUpdateDomain.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/updateDomains": {
+ "get": {
+ "tags": [
+ "CloudServicesUpdateDomain"
+ ],
+ "description": "Gets a list of all update domains in a cloud service.",
+ "operationId": "CloudServicesUpdateDomain_ListUpdateDomains",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "resourceGroupName",
+ "description": "Name of the resource group.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "cloudServiceName",
+ "description": "Name of the cloud service.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/UpdateDomainListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Update Domains in Cloud Service": {
+ "$ref": "./examples/ListCloudServiceUpdateDomains.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/cloudServiceOsVersions/{osVersionName}": {
+ "get": {
+ "tags": [
+ "CloudServiceOperatingSystems"
+ ],
+ "description": "Gets properties of a guest operating system version that can be specified in the XML service configuration (.cscfg) for a cloud service.",
+ "operationId": "CloudServiceOperatingSystems_GetOSVersion",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "location",
+ "description": "Name of the location that the OS version pertains to.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "osVersionName",
+ "description": "Name of the OS version.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OSVersion"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service OS Version": {
+ "$ref": "./examples/GetCloudServiceOSVersion.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/cloudServiceOsVersions": {
+ "get": {
+ "tags": [
+ "CloudServiceOperatingSystems"
+ ],
+ "description": "Gets a list of all guest operating system versions available to be specified in the XML service configuration (.cscfg) for a cloud service. Use nextLink property in the response to get the next page of OS versions. Do this till nextLink is null to fetch all the OS versions.",
+ "operationId": "CloudServiceOperatingSystems_ListOSVersions",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "location",
+ "description": "Name of the location that the OS versions pertain to.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OSVersionListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Cloud Service OS Versions in a subscription": {
+ "$ref": "./examples/ListCloudServiceOSVersions.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/cloudServiceOsFamilies/{osFamilyName}": {
+ "get": {
+ "tags": [
+ "CloudServiceOperatingSystems"
+ ],
+ "description": "Gets properties of a guest operating system family that can be specified in the XML service configuration (.cscfg) for a cloud service.",
+ "operationId": "CloudServiceOperatingSystems_GetOSFamily",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "location",
+ "description": "Name of the location that the OS family pertains to.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "osFamilyName",
+ "description": "Name of the OS family.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OSFamily"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "Get Cloud Service OS Family": {
+ "$ref": "./examples/GetCloudServiceOSFamily.json"
+ }
+ }
+ }
+ },
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/cloudServiceOsFamilies": {
+ "get": {
+ "tags": [
+ "CloudServiceOperatingSystems"
+ ],
+ "description": "Gets a list of all guest operating system families available to be specified in the XML service configuration (.cscfg) for a cloud service. Use nextLink property in the response to get the next page of OS Families. Do this till nextLink is null to fetch all the OS Families.",
+ "operationId": "CloudServiceOperatingSystems_ListOSFamilies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "location",
+ "description": "Name of the location that the OS families pertain to.",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "$ref": "#/parameters/SubscriptionIdParameter"
+ },
+ {
+ "$ref": "#/parameters/ApiVersionParameter"
+ }
+ ],
+ "responses": {
+ "default": {
+ "description": "Error",
+ "schema": {
+ "$ref": "#/definitions/CloudError"
+ }
+ },
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/OSFamilyListResult"
+ }
+ }
+ },
+ "x-ms-examples": {
+ "List Cloud Service OS Families in a subscription": {
+ "$ref": "./examples/ListCloudServiceOSFamilies.json"
+ }
+ },
+ "x-ms-pageable": {
+ "nextLinkName": "nextLink"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ApiErrorBase": {
+ "description": "Api error base.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "The error code.",
+ "type": "string"
+ },
+ "message": {
+ "description": "The error message.",
+ "type": "string"
+ },
+ "target": {
+ "description": "The target of the particular error.",
+ "type": "string"
+ }
+ }
+ },
+ "InnerError": {
+ "description": "Inner error details.",
+ "type": "object",
+ "properties": {
+ "exceptiontype": {
+ "description": "The exception type.",
+ "type": "string"
+ },
+ "errordetail": {
+ "description": "The internal error message or exception dump.",
+ "type": "string"
+ }
+ }
+ },
+ "ApiError": {
+ "description": "Api error.",
+ "type": "object",
+ "properties": {
+ "details": {
+ "description": "The Api error details",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ApiErrorBase"
+ }
+ },
+ "innererror": {
+ "$ref": "#/definitions/InnerError",
+ "description": "The Api inner error"
+ },
+ "code": {
+ "description": "The error code.",
+ "type": "string"
+ },
+ "message": {
+ "description": "The error message.",
+ "type": "string"
+ },
+ "target": {
+ "description": "The target of the particular error.",
+ "type": "string"
+ }
+ }
+ },
+ "CloudError": {
+ "description": "An error response from the Compute service.",
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/ApiError"
+ }
+ },
+ "x-ms-external": true
+ },
+ "InstanceSku": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The sku name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "tier": {
+ "description": "The tier of the cloud service role instance.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "SubResource": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id",
+ "type": "string"
+ }
+ },
+ "x-ms-azure-resource": true
+ },
+ "RoleInstanceNetworkProfile": {
+ "description": "Describes the network profile for the role instance.",
+ "type": "object",
+ "properties": {
+ "networkInterfaces": {
+ "description": "Specifies the list of resource Ids for the network interfaces associated with the role instance.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SubResource"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "ResourceInstanceViewStatus": {
+ "description": "Instance view status.",
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "The status code.",
+ "type": "string",
+ "readOnly": true
+ },
+ "displayStatus": {
+ "description": "The short localizable label for the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "message": {
+ "description": "The detailed status message, including for alerts and error messages.",
+ "type": "string",
+ "readOnly": true
+ },
+ "time": {
+ "format": "date-time",
+ "description": "The time of the status.",
+ "type": "string",
+ "readOnly": true
+ },
+ "level": {
+ "description": "The level code.",
+ "enum": [
+ "Info",
+ "Warning",
+ "Error"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "StatusLevelTypes",
+ "modelAsString": false
+ }
+ }
+ }
+ },
+ "RoleInstanceInstanceView": {
+ "description": "The instance view of the role instance.",
+ "type": "object",
+ "properties": {
+ "platformUpdateDomain": {
+ "format": "int32",
+ "description": "The Update Domain.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "platformFaultDomain": {
+ "format": "int32",
+ "description": "The Fault Domain.",
+ "type": "integer",
+ "readOnly": true
+ },
+ "privateId": {
+ "description": "Specifies a unique identifier generated internally for the cloud service associated with this role instance.
NOTE: If you are using Azure Diagnostics extension, this property can be used as 'DeploymentId' for querying details.",
+ "type": "string",
+ "readOnly": true
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceInstanceViewStatus"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "RoleInstanceProperties": {
+ "type": "object",
+ "properties": {
+ "networkProfile": {
+ "$ref": "#/definitions/RoleInstanceNetworkProfile"
+ },
+ "instanceView": {
+ "$ref": "#/definitions/RoleInstanceInstanceView"
+ }
+ }
+ },
+ "RoleInstance": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource Name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource Type.",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "Resource Location.",
+ "type": "string",
+ "readOnly": true
+ },
+ "tags": {
+ "description": "Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "sku": {
+ "$ref": "#/definitions/InstanceSku"
+ },
+ "properties": {
+ "$ref": "#/definitions/RoleInstanceProperties"
+ }
+ }
+ },
+ "RoleInstanceListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RoleInstance"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "CloudServiceRoleSku": {
+ "description": "Describes the cloud service role sku.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The sku name. NOTE: If the new SKU is not supported on the hardware the cloud service is currently on, you need to delete and recreate the cloud service or move back to the old sku.",
+ "type": "string"
+ },
+ "tier": {
+ "description": "Specifies the tier of the cloud service. Possible Values are
**Standard**
**Basic**",
+ "type": "string"
+ },
+ "capacity": {
+ "format": "int64",
+ "description": "Specifies the number of role instances in the cloud service.",
+ "type": "integer"
+ }
+ }
+ },
+ "CloudServiceRoleProperties": {
+ "description": "",
+ "type": "object",
+ "properties": {
+ "uniqueId": {
+ "description": "Specifies the ID which uniquely identifies a cloud service role.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CloudServiceRole": {
+ "description": "Describes a role of the cloud service.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource id",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource name",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource type",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "Resource location",
+ "type": "string",
+ "readOnly": true
+ },
+ "sku": {
+ "$ref": "#/definitions/CloudServiceRoleSku"
+ },
+ "properties": {
+ "$ref": "#/definitions/CloudServiceRoleProperties"
+ }
+ }
+ },
+ "CloudServiceRoleListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudServiceRole"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "CloudServiceUpgradeMode": {
+ "description": "Update mode for the cloud service. Role instances are allocated to update domains when the service is deployed. Updates can be initiated manually in each update domain or initiated automatically in all update domains.\r\nPossible Values are
**Auto**
**Manual**
**Simultaneous**
\r\nIf not specified, the default value is Auto. If set to Manual, PUT UpdateDomain must be called to apply the update. If set to Auto, the update is automatically applied to each update domain in sequence.",
+ "enum": [
+ "Auto",
+ "Manual",
+ "Simultaneous"
+ ],
+ "type": "string",
+ "x-ms-enum": {
+ "name": "CloudServiceUpgradeMode",
+ "modelAsString": true
+ }
+ },
+ "CloudServiceRoleProfileProperties": {
+ "description": "Describes the role properties.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "Resource name.",
+ "type": "string"
+ },
+ "sku": {
+ "$ref": "#/definitions/CloudServiceRoleSku"
+ }
+ }
+ },
+ "CloudServiceRoleProfile": {
+ "description": "Describes the role profile for the cloud service.",
+ "type": "object",
+ "properties": {
+ "roles": {
+ "description": "List of roles for the cloud service.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudServiceRoleProfileProperties"
+ }
+ }
+ }
+ },
+ "CloudServiceVaultCertificate": {
+ "description": "Describes a single certificate reference in a Key Vault, and where the certificate should reside on the role instance.",
+ "type": "object",
+ "properties": {
+ "certificateUrl": {
+ "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret.",
+ "type": "string"
+ }
+ }
+ },
+ "CloudServiceVaultSecretGroup": {
+ "description": "Describes a set of certificates which are all in the same Key Vault.",
+ "type": "object",
+ "properties": {
+ "sourceVault": {
+ "$ref": "#/definitions/SubResource",
+ "description": "The relative URL of the Key Vault containing all of the certificates in VaultCertificates."
+ },
+ "vaultCertificates": {
+ "description": "The list of key vault references in SourceVault which contain certificates.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudServiceVaultCertificate"
+ }
+ }
+ }
+ },
+ "CloudServiceOsProfile": {
+ "description": "Describes the OS profile for the cloud service.",
+ "type": "object",
+ "properties": {
+ "secrets": {
+ "description": "Specifies set of certificates that should be installed onto the role instances.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudServiceVaultSecretGroup"
+ }
+ }
+ }
+ },
+ "LoadBalancerFrontendIPConfigurationProperties": {
+ "description": "Describes a cloud service IP Configuration",
+ "type": "object",
+ "properties": {
+ "publicIPAddress": {
+ "$ref": "#/definitions/SubResource",
+ "description": "The reference to the public ip address resource."
+ },
+ "subnet": {
+ "$ref": "#/definitions/SubResource",
+ "description": "The reference to the virtual network subnet resource."
+ },
+ "privateIPAddress": {
+ "description": "The virtual network private IP address of the IP configuration.",
+ "type": "string"
+ }
+ }
+ },
+ "LoadBalancerFrontendIPConfiguration": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the resource that is unique within the set of frontend IP configurations used by the load balancer. This name can be used to access the resource.",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/LoadBalancerFrontendIPConfigurationProperties",
+ "description": "Properties of load balancer frontend ip configuration."
+ }
+ },
+ "required": [
+ "name",
+ "properties"
+ ]
+ },
+ "LoadBalancerConfigurationProperties": {
+ "type": "object",
+ "properties": {
+ "frontendIPConfigurations": {
+ "description": "Specifies the frontend IP to be used for the load balancer. Only IPv4 frontend IP address is supported. Each load balancer configuration must have exactly one frontend IP configuration.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LoadBalancerFrontendIPConfiguration"
+ }
+ }
+ },
+ "required": [
+ "frontendIPConfigurations"
+ ]
+ },
+ "LoadBalancerConfiguration": {
+ "description": "Describes the load balancer configuration.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the Load balancer",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/LoadBalancerConfigurationProperties",
+ "description": "Properties of the load balancer configuration."
+ }
+ },
+ "required": [
+ "name",
+ "properties"
+ ]
+ },
+ "CloudServiceNetworkProfile": {
+ "description": "Network Profile for the cloud service.",
+ "type": "object",
+ "properties": {
+ "loadBalancerConfigurations": {
+ "description": "List of Load balancer configurations. Cloud service can have up to two load balancer configurations, corresponding to a Public Load Balancer and an Internal Load Balancer.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LoadBalancerConfiguration"
+ }
+ },
+ "swappableCloudService": {
+ "$ref": "#/definitions/SubResource",
+ "description": "The id reference of the cloud service containing the target IP with which the subject cloud service can perform a swap. This property cannot be updated once it is set. The swappable cloud service referred by this id must be present otherwise an error will be thrown."
+ }
+ }
+ },
+ "CloudServiceVaultAndSecretReference": {
+ "type": "object",
+ "properties": {
+ "sourceVault": {
+ "$ref": "#/definitions/SubResource"
+ },
+ "secretUrl": {
+ "type": "string"
+ }
+ }
+ },
+ "CloudServiceExtensionProperties": {
+ "description": "Extension Properties.",
+ "type": "object",
+ "properties": {
+ "publisher": {
+ "description": "The name of the extension handler publisher.",
+ "type": "string"
+ },
+ "type": {
+ "description": "Specifies the type of the extension.",
+ "type": "string"
+ },
+ "typeHandlerVersion": {
+ "description": "Specifies the version of the extension. Specifies the version of the extension. If this element is not specified or an asterisk (*) is used as the value, the latest version of the extension is used. If the value is specified with a major version number and an asterisk as the minor version number (X.), the latest minor version of the specified major version is selected. If a major version number and a minor version number are specified (X.Y), the specific extension version is selected. If a version is specified, an auto-upgrade is performed on the role instance.",
+ "type": "string"
+ },
+ "autoUpgradeMinorVersion": {
+ "description": "Explicitly specify whether platform can automatically upgrade typeHandlerVersion to higher minor versions when they become available.",
+ "type": "boolean"
+ },
+ "settings": {
+ "description": "Public settings for the extension. For JSON extensions, this is the JSON settings for the extension. For XML Extension (like RDP), this is the XML setting for the extension.",
+ "type": "string"
+ },
+ "protectedSettings": {
+ "description": "Protected settings for the extension which are encrypted before sent to the role instance.",
+ "type": "string"
+ },
+ "protectedSettingsFromKeyVault": {
+ "$ref": "#/definitions/CloudServiceVaultAndSecretReference"
+ },
+ "forceUpdateTag": {
+ "description": "Tag to force apply the provided public and protected settings.\r\nChanging the tag value allows for re-running the extension without changing any of the public or protected settings.\r\nIf forceUpdateTag is not changed, updates to public or protected settings would still be applied by the handler.\r\nIf neither forceUpdateTag nor any of public or protected settings change, extension would flow to the role instance with the same sequence-number, and\r\nit is up to handler implementation whether to re-run it or not",
+ "type": "string"
+ },
+ "provisioningState": {
+ "description": "The provisioning state, which only appears in the response.",
+ "type": "string",
+ "readOnly": true
+ },
+ "rolesAppliedTo": {
+ "description": "Optional list of roles to apply this extension. If property is not specified or '*' is specified, extension is applied to all roles in the cloud service.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "Extension": {
+ "description": "Describes a cloud service Extension.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The name of the extension.",
+ "type": "string"
+ },
+ "properties": {
+ "$ref": "#/definitions/CloudServiceExtensionProperties"
+ }
+ }
+ },
+ "CloudServiceExtensionProfile": {
+ "description": "Describes a cloud service extension profile.",
+ "type": "object",
+ "properties": {
+ "extensions": {
+ "description": "List of extensions for the cloud service.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Extension"
+ }
+ }
+ }
+ },
+ "CloudServiceProperties": {
+ "description": "Cloud service properties",
+ "type": "object",
+ "properties": {
+ "packageUrl": {
+ "description": "Specifies a URL that refers to the location of the service package in the Blob service. The service package URL can be Shared Access Signature (SAS) URI from any storage account.\r\nThis is a write-only property and is not returned in GET calls.",
+ "type": "string"
+ },
+ "configuration": {
+ "description": "Specifies the XML service configuration (.cscfg) for the cloud service.",
+ "type": "string"
+ },
+ "configurationUrl": {
+ "description": "Specifies a URL that refers to the location of the service configuration in the Blob service. The service package URL can be Shared Access Signature (SAS) URI from any storage account.\r\nThis is a write-only property and is not returned in GET calls.",
+ "type": "string"
+ },
+ "startCloudService": {
+ "description": "(Optional) Indicates whether to start the cloud service immediately after it is created. The default value is `true`.\r\nIf false, the service model is still deployed, but the code is not run immediately. Instead, the service is PoweredOff until you call Start, at which time the service will be started. A deployed service still incurs charges, even if it is poweredoff.",
+ "type": "boolean"
+ },
+ "allowModelOverride": {
+ "description": "(Optional) Indicates whether the role sku properties (roleProfile.roles.sku) specified in the model/template should override the role instance count and vm size specified in the .cscfg and .csdef respectively.\r\nThe default value is `false`.",
+ "type": "boolean"
+ },
+ "upgradeMode": {
+ "$ref": "#/definitions/CloudServiceUpgradeMode"
+ },
+ "roleProfile": {
+ "$ref": "#/definitions/CloudServiceRoleProfile"
+ },
+ "osProfile": {
+ "$ref": "#/definitions/CloudServiceOsProfile"
+ },
+ "networkProfile": {
+ "$ref": "#/definitions/CloudServiceNetworkProfile"
+ },
+ "extensionProfile": {
+ "$ref": "#/definitions/CloudServiceExtensionProfile"
+ },
+ "provisioningState": {
+ "description": "The provisioning state, which only appears in the response.",
+ "type": "string",
+ "readOnly": true
+ },
+ "uniqueId": {
+ "description": "The unique identifier for the cloud service.",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "CloudService": {
+ "description": "Describes the cloud service.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource type.",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "Resource location.",
+ "type": "string"
+ },
+ "tags": {
+ "description": "Resource tags.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "properties": {
+ "$ref": "#/definitions/CloudServiceProperties"
+ }
+ },
+ "x-ms-azure-resource": true,
+ "required": [
+ "location"
+ ]
+ },
+ "CloudServiceUpdate": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "description": "Resource tags",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "StatusCodeCount": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "description": "The instance view status code",
+ "type": "string",
+ "readOnly": true
+ },
+ "count": {
+ "format": "int32",
+ "description": "Number of instances having this status code",
+ "type": "integer",
+ "readOnly": true
+ }
+ }
+ },
+ "InstanceViewStatusesSummary": {
+ "description": "Instance view statuses.",
+ "type": "object",
+ "properties": {
+ "statusesSummary": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StatusCodeCount"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "CloudServiceInstanceView": {
+ "description": "InstanceView of CloudService as a whole",
+ "type": "object",
+ "properties": {
+ "roleInstance": {
+ "$ref": "#/definitions/InstanceViewStatusesSummary"
+ },
+ "sdkVersion": {
+ "description": "The version of the SDK that was used to generate the package for the cloud service.",
+ "type": "string",
+ "readOnly": true
+ },
+ "privateIds": {
+ "description": "Specifies a list of unique identifiers generated internally for the cloud service.
NOTE: If you are using Azure Diagnostics extension, this property can be used as 'DeploymentId' for querying details.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "readOnly": true
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourceInstanceViewStatus"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "CloudServiceListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudService"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "RoleInstances": {
+ "description": "Specifies a list of role instances from the cloud service.",
+ "type": "object",
+ "properties": {
+ "roleInstances": {
+ "description": "List of cloud service role instance names. Value of '*' will signify all role instances of the cloud service.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "required": [
+ "roleInstances"
+ ]
+ },
+ "UpdateDomain": {
+ "description": "Defines an update domain for the cloud service.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource Name",
+ "type": "string",
+ "readOnly": true
+ }
+ }
+ },
+ "UpdateDomainListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UpdateDomain"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "OSVersionProperties": {
+ "description": "OS version properties.",
+ "type": "object",
+ "properties": {
+ "family": {
+ "description": "The family of this OS version.",
+ "type": "string",
+ "readOnly": true
+ },
+ "familyLabel": {
+ "description": "The family label of this OS version.",
+ "type": "string",
+ "readOnly": true
+ },
+ "version": {
+ "description": "The OS version.",
+ "type": "string",
+ "readOnly": true
+ },
+ "label": {
+ "description": "The OS version label.",
+ "type": "string",
+ "readOnly": true
+ },
+ "isDefault": {
+ "description": "Specifies whether this is the default OS version for its family.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "isActive": {
+ "description": "Specifies whether this OS version is active.",
+ "type": "boolean",
+ "readOnly": true
+ }
+ }
+ },
+ "OSVersion": {
+ "description": "Describes a cloud service OS version.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource type.",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "Resource location.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/OSVersionProperties"
+ }
+ }
+ },
+ "OSVersionListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OSVersion"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ },
+ "OSVersionPropertiesBase": {
+ "description": "Configuration view of an OS version.",
+ "type": "object",
+ "properties": {
+ "version": {
+ "description": "The OS version.",
+ "type": "string",
+ "readOnly": true
+ },
+ "label": {
+ "description": "The OS version label.",
+ "type": "string",
+ "readOnly": true
+ },
+ "isDefault": {
+ "description": "Specifies whether this is the default OS version for its family.",
+ "type": "boolean",
+ "readOnly": true
+ },
+ "isActive": {
+ "description": "Specifies whether this OS version is active.",
+ "type": "boolean",
+ "readOnly": true
+ }
+ }
+ },
+ "OSFamilyProperties": {
+ "description": "OS family properties.",
+ "type": "object",
+ "properties": {
+ "name": {
+ "description": "The OS family name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "label": {
+ "description": "The OS family label.",
+ "type": "string",
+ "readOnly": true
+ },
+ "versions": {
+ "description": "List of OS versions belonging to this family.",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OSVersionPropertiesBase"
+ },
+ "readOnly": true
+ }
+ }
+ },
+ "OSFamily": {
+ "description": "Describes a cloud service OS family.",
+ "type": "object",
+ "properties": {
+ "id": {
+ "description": "Resource Id.",
+ "type": "string",
+ "readOnly": true
+ },
+ "name": {
+ "description": "Resource name.",
+ "type": "string",
+ "readOnly": true
+ },
+ "type": {
+ "description": "Resource type.",
+ "type": "string",
+ "readOnly": true
+ },
+ "location": {
+ "description": "Resource location.",
+ "type": "string",
+ "readOnly": true
+ },
+ "properties": {
+ "$ref": "#/definitions/OSFamilyProperties"
+ }
+ }
+ },
+ "OSFamilyListResult": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/OSFamily"
+ }
+ },
+ "nextLink": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "value"
+ ]
+ }
+ },
+ "securityDefinitions": {
+ "azure_auth": {
+ "type": "oauth2",
+ "flow": "implicit",
+ "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
+ "scopes": {
+ "user_impersonation": "impersonate your user account"
+ },
+ "description": "Azure Active Directory OAuth2 Flow"
+ }
+ },
+ "security": [
+ {
+ "azure_auth": [
+ "user_impersonation"
+ ]
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "consumes": [
+ "application/json"
+ ],
+ "parameters": {
+ "SubscriptionIdParameter": {
+ "name": "subscriptionId",
+ "in": "path",
+ "required": true,
+ "type": "string",
+ "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
+ },
+ "ApiVersionParameter": {
+ "name": "api-version",
+ "in": "query",
+ "required": true,
+ "type": "string",
+ "description": "Client Api Version."
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithMultiRole.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithMultiRole.json
new file mode 100644
index 000000000000..4eb7dbc69ee1
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithMultiRole.json
@@ -0,0 +1,171 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01",
+ "parameters": {
+ "properties": {
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ },
+ "name": "contosofe"
+ }
+ ]
+ },
+ "name": "contosolb"
+ }
+ ]
+ },
+ "roleProfile": {
+ "roles": [
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoFrontend"
+ },
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoBackend"
+ }
+ ]
+ },
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto"
+ },
+ "location": "westus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Updating",
+ "uniqueId": "7f3edf91-cb34-4a3e-971a-177dc3dd43cb"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Creating",
+ "uniqueId": "7f3edf91-cb34-4a3e-971a-177dc3dd43cb"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithSingleRole.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithSingleRole.json
new file mode 100644
index 000000000000..6da414dd5594
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithSingleRole.json
@@ -0,0 +1,147 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/myPublicIP"
+ }
+ },
+ "name": "myfe"
+ }
+ ]
+ },
+ "name": "myLoadBalancer"
+ }
+ ]
+ },
+ "roleProfile": {
+ "roles": [
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoFrontend"
+ }
+ ]
+ },
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/5393f919-a68a-43d0-9063-4b2bda6bffdf/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "packageUrl": "{PackageUrl}",
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/myPublicIP"
+ }
+ },
+ "name": "myfe"
+ }
+ ]
+ },
+ "name": "myLoadBalancer"
+ }
+ ]
+ },
+ "provisioningState": "Updating",
+ "uniqueId": "14d10b45-ced7-42ef-a406-50a3df2cea7d"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/5393f919-a68a-43d0-9063-4b2bda6bffdf/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "packageUrl": "{PackageUrl}",
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/myPublicIP"
+ }
+ },
+ "name": "myfe"
+ }
+ ]
+ },
+ "name": "myLoadBalancer"
+ }
+ ]
+ },
+ "provisioningState": "Creating",
+ "uniqueId": "14d10b45-ced7-42ef-a406-50a3df2cea7d"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithSingleRoleAndCertificate.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithSingleRoleAndCertificate.json
new file mode 100644
index 000000000000..c3d1d21e76a9
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithSingleRoleAndCertificate.json
@@ -0,0 +1,183 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01",
+ "parameters": {
+ "location": "westus",
+ "properties": {
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ },
+ "name": "contosofe"
+ }
+ ]
+ },
+ "name": "contosolb"
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.KeyVault/vaults/{keyvault-name}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "https://{keyvault-name}.vault.azure.net:443/secrets/ContosoCertificate/{secret-id}"
+ }
+ ]
+ }
+ ]
+ },
+ "roleProfile": {
+ "roles": [
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoFrontend"
+ }
+ ]
+ },
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.KeyVault/vaults/{keyvault-name}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "https://{keyvault-name}.vault.azure.net:443/secrets/ContosoCertificate/{secret-id}"
+ }
+ ]
+ }
+ ]
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Updating",
+ "uniqueId": "60b6cd59-600b-4e02-b717-521b07aa94bf"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": [
+ {
+ "sourceVault": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.KeyVault/vaults/{keyvault-name}"
+ },
+ "vaultCertificates": [
+ {
+ "certificateUrl": "https://{keyvault-name}.vault.azure.net:443/secrets/ContosoCertificate/{secret-id}"
+ }
+ ]
+ }
+ ]
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Creating",
+ "uniqueId": "60b6cd59-600b-4e02-b717-521b07aa94bf"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithSingleRoleAndRDP.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithSingleRoleAndRDP.json
new file mode 100644
index 000000000000..737da3c618d2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/CreateCloudServiceWithSingleRoleAndRDP.json
@@ -0,0 +1,198 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01",
+ "parameters": {
+ "properties": {
+ "extensionProfile": {
+ "extensions": [
+ {
+ "properties": {
+ "type": "RDP",
+ "autoUpgradeMinorVersion": false,
+ "protectedSettings": "{password}",
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "settings": "UserAzure10/22/2021 15:05:45",
+ "typeHandlerVersion": "1.2.1"
+ },
+ "name": "RDPExtension"
+ }
+ ]
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ },
+ "name": "contosofe"
+ }
+ ]
+ },
+ "name": "contosolb"
+ }
+ ]
+ },
+ "roleProfile": {
+ "roles": [
+ {
+ "sku": {
+ "name": "Standard_D1_v2",
+ "capacity": 1,
+ "tier": "Standard"
+ },
+ "name": "ContosoFrontend"
+ }
+ ]
+ },
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto"
+ },
+ "location": "westus"
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "RDPExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "provisioningState": "Creating",
+ "rolesAppliedTo": [
+ "*"
+ ],
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "type": "RDP",
+ "typeHandlerVersion": "1.2.1",
+ "settings": "UserAzure10/22/2021 15:05:45"
+ }
+ }
+ ]
+ },
+ "provisioningState": "Updating",
+ "uniqueId": "c948cccb-bbfa-4516-a250-c28abc4d0c15"
+ }
+ }
+ },
+ "201": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "westus",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "packageUrl": "{PackageUrl}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 1
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "RDPExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "provisioningState": "Creating",
+ "rolesAppliedTo": [
+ "*"
+ ],
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "type": "RDP",
+ "typeHandlerVersion": "1.2.1",
+ "settings": "UserAzure10/22/2021 15:05:45"
+ }
+ }
+ ]
+ },
+ "provisioningState": "Creating",
+ "uniqueId": "c948cccb-bbfa-4516-a250-c28abc4d0c15"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteCloudService.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteCloudService.json
new file mode 100644
index 000000000000..7eedfbe6d7de
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteCloudService.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteCloudServiceRoleInstance.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteCloudServiceRoleInstance.json
new file mode 100644
index 000000000000..1ef970bc0086
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteCloudServiceRoleInstance.json
@@ -0,0 +1,14 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {},
+ "204": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteCloudServiceRoleInstances.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteCloudServiceRoleInstances.json
new file mode 100644
index 000000000000..9ccd9c6e8986
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/DeleteCloudServiceRoleInstances.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01",
+ "parameters": {
+ "roleInstances": [
+ "ContosoFrontend_IN_0",
+ "ContosoBackend_IN_1"
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceInstanceViewWithMultiRole.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceInstanceViewWithMultiRole.json
new file mode 100644
index 000000000000..eb9b428909bc
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceInstanceViewWithMultiRole.json
@@ -0,0 +1,58 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "roleInstance": {
+ "statusesSummary": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "count": 4
+ },
+ {
+ "code": "PowerState/started",
+ "count": 4
+ },
+ {
+ "code": "RoleState/RoleStateStarted",
+ "count": 4
+ }
+ ]
+ },
+ "sdkVersion": "2.9.6496.3",
+ "privateIds": [
+ "3491bc0c-1f6c-444f-b1d0-ec0751a74e3e"
+ ],
+ "statuses": [
+ {
+ "code": "ProvisioningState/succeeded",
+ "level": "Info",
+ "displayStatus": "Provisioning succeeded",
+ "time": "2021-01-12T16:50:07.0953535+05:30"
+ },
+ {
+ "code": "PowerState/started",
+ "level": "Info",
+ "displayStatus": "Started",
+ "time": "2021-01-12T16:50:07.0953535+05:30"
+ },
+ {
+ "code": "CurrentUpgradeDomain/-1",
+ "level": "Info",
+ "displayStatus": "Current Upgrade Domain of cloud service is -1."
+ },
+ {
+ "code": "MaxUpgradeDomain/1",
+ "level": "Info",
+ "displayStatus": "Max Upgrade Domain of cloud service is 1."
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceOSFamily.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceOSFamily.json
new file mode 100644
index 000000000000..5040a62f16f2
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceOSFamily.json
@@ -0,0 +1,30 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "location": "westus2",
+ "osFamilyName": "3",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "3",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSFamilies/3",
+ "type": "Microsoft.Compute/locations/cloudServiceOsFamilies",
+ "location": "westus2",
+ "properties": {
+ "name": "3",
+ "label": "Windows Server 2012",
+ "versions": [
+ {
+ "version": "WA-GUEST-OS-3.90_202010-02",
+ "label": "Windows Azure Guest OS 3.90 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true
+ }
+ ]
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceOSVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceOSVersion.json
new file mode 100644
index 000000000000..aa492f49ff58
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceOSVersion.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "location": "westus2",
+ "osVersionName": "WA-GUEST-OS-3.90_202010-02",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "WA-GUEST-OS-3.90_202010-02",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSVersions/WA-GUEST-OS-3.90_202010-02",
+ "type": "Microsoft.Compute/locations/cloudServiceOsVersions",
+ "location": "westus2",
+ "properties": {
+ "version": "WA-GUEST-OS-3.90_202010-02",
+ "label": "Windows Azure Guest OS 3.90 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true,
+ "family": "3",
+ "familyLabel": "Windows Server 2012"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceRole.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceRole.json
new file mode 100644
index 000000000000..acef5e9698ea
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceRole.json
@@ -0,0 +1,27 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleName": "{role-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{role-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roles/{role-name}",
+ "type": "Microsoft.Compute/cloudServices/roles",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ },
+ "properties": {
+ "uniqueId": "b03bc269-766b-4921-b91a-7dffaae4d03b:{role-name}"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceRoleInstance.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceRoleInstance.json
new file mode 100644
index 000000000000..3d68b1e68fc4
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceRoleInstance.json
@@ -0,0 +1,32 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{roleInstance-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/{roleInstance-name}",
+ "type": "Microsoft.Compute/cloudServices/roleInstances",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard"
+ },
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/{roleInstance-name}/networkInterfaces/nic1"
+ }
+ ]
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceUpdateDomain.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceUpdateDomain.json
new file mode 100644
index 000000000000..cc4e287a8fbb
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceUpdateDomain.json
@@ -0,0 +1,17 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "updateDomain": 1,
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "1",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/updateDomains/1"
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceWithMultiRoleAndRDP.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceWithMultiRoleAndRDP.json
new file mode 100644
index 000000000000..94ca252d240c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetCloudServiceWithMultiRoleAndRDP.json
@@ -0,0 +1,84 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "eastus2euap",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "RDPExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "provisioningState": "Succeeded",
+ "rolesAppliedTo": [
+ "*"
+ ],
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "type": "RDP",
+ "typeHandlerVersion": "1.2.1",
+ "settings": "userazure01/12/2022 16:29:02"
+ }
+ }
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "uniqueId": "4ccb4323-4740-4545-bb81-780b27375947"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetInstanceViewOfCloudServiceRoleInstance.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetInstanceViewOfCloudServiceRoleInstance.json
new file mode 100644
index 000000000000..c15be6646fc0
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/GetInstanceViewOfCloudServiceRoleInstance.json
@@ -0,0 +1,26 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "platformUpdateDomain": 0,
+ "platformFaultDomain": 0,
+ "privateId": "3491bc0c-1f6c-444f-b1d0-ec0751a74e3e",
+ "statuses": [
+ {
+ "code": "RoleState/RoleStateStarted",
+ "level": "Info",
+ "displayStatus": "RoleStateStarted",
+ "message": ""
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceOSFamilies.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceOSFamilies.json
new file mode 100644
index 000000000000..e04b9b365d8f
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceOSFamilies.json
@@ -0,0 +1,51 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "location": "westus2",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "3",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSFamilies/3",
+ "type": "Microsoft.Compute/locations/cloudServiceOsFamilies",
+ "location": "westus2",
+ "properties": {
+ "name": "3",
+ "label": "Windows Server 2012",
+ "versions": [
+ {
+ "version": "WA-GUEST-OS-3.90_202010-02",
+ "label": "Windows Azure Guest OS 3.90 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true
+ }
+ ]
+ }
+ },
+ {
+ "name": "4",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSFamilies/4",
+ "type": "Microsoft.Compute/locations/cloudServiceOsFamilies",
+ "location": "westus2",
+ "properties": {
+ "name": "4",
+ "label": "Windows Server 2012 R2",
+ "versions": [
+ {
+ "version": "WA-GUEST-OS-4.83_202010-02",
+ "label": "Windows Azure Guest OS 4.83 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceOSVersions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceOSVersions.json
new file mode 100644
index 000000000000..f3b79cfed264
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceOSVersions.json
@@ -0,0 +1,43 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "location": "westus2",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "WA-GUEST-OS-3.90_202010-02",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSVersions/WA-GUEST-OS-3.90_202010-02",
+ "type": "Microsoft.Compute/locations/cloudServiceOsVersions",
+ "location": "westus2",
+ "properties": {
+ "version": "WA-GUEST-OS-3.90_202010-02",
+ "label": "Windows Azure Guest OS 3.90 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true,
+ "family": "3",
+ "familyLabel": "Windows Server 2012"
+ }
+ },
+ {
+ "name": "WA-GUEST-OS-4.83_202010-02",
+ "id": "/subscriptions/{subscription-id}/providers/Microsoft.Compute/locations/westus2/cloudServiceOSVersions/WA-GUEST-OS-4.83_202010-02",
+ "type": "Microsoft.Compute/locations/cloudServiceOsVersions",
+ "location": "westus2",
+ "properties": {
+ "version": "WA-GUEST-OS-4.83_202010-02",
+ "label": "Windows Azure Guest OS 4.83 (Release 202010-02)",
+ "isDefault": true,
+ "isActive": true,
+ "family": "4",
+ "familyLabel": "Windows Server 2012 R2"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceRoles.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceRoles.json
new file mode 100644
index 000000000000..83d753ce9d31
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceRoles.json
@@ -0,0 +1,44 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "ContosoFrontend",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roles/ContosoFrontend",
+ "type": "Microsoft.Compute/cloudServices/roles",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ },
+ "properties": {
+ "uniqueId": "b03bc269-766b-4921-b91a-7dffaae4d03b:ContosoFrontend"
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roles/ContosoBackend",
+ "type": "Microsoft.Compute/cloudServices/roles",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ },
+ "properties": {
+ "uniqueId": "b03bc269-766b-4921-b91a-7dffaae4d03b:ContosoBackend"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceRolesInstances.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceRolesInstances.json
new file mode 100644
index 000000000000..4a3b8b5431ed
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceRolesInstances.json
@@ -0,0 +1,92 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "ContosoFrontend_IN_0",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoFrontend_IN_0",
+ "type": "Microsoft.Compute/cloudServices/roleInstances",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard"
+ },
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoFrontend_IN_0/networkInterfaces/nic1"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "ContosoFrontend_IN_1",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoFrontend_IN_1",
+ "type": "Microsoft.Compute/cloudServices/roleInstances",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard"
+ },
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoFrontend_IN_1/networkInterfaces/nic1"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "ContosoBackend_IN_0",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoBackend_IN_0",
+ "type": "Microsoft.Compute/cloudServices/roleInstances",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard"
+ },
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoBackend_IN_0/networkInterfaces/nic1"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "name": "ContosoBackend_IN_1",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoBackend_IN_1",
+ "type": "Microsoft.Compute/cloudServices/roleInstances",
+ "location": "eastus2euap",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard"
+ },
+ "properties": {
+ "networkProfile": {
+ "networkInterfaces": [
+ {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/roleInstances/ContosoBackend_IN_1/networkInterfaces/nic1"
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceUpdateDomains.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceUpdateDomains.json
new file mode 100644
index 000000000000..c5e97b3fa74e
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServiceUpdateDomains.json
@@ -0,0 +1,24 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "0",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/updateDomains/0"
+ },
+ {
+ "name": "1",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}/updateDomains/1"
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServicesInResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServicesInResourceGroup.json
new file mode 100644
index 000000000000..ec695f6e4800
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServicesInResourceGroup.json
@@ -0,0 +1,87 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "eastus2euap",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "RDPExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "provisioningState": "Succeeded",
+ "rolesAppliedTo": [
+ "*"
+ ],
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "type": "RDP",
+ "typeHandlerVersion": "1.2.1",
+ "settings": "userazure01/12/2022 16:29:02"
+ }
+ }
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "uniqueId": "4ccb4323-4740-4545-bb81-780b27375947"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServicesInSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServicesInSubscription.json
new file mode 100644
index 000000000000..2bf634e493e8
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ListCloudServicesInSubscription.json
@@ -0,0 +1,86 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "value": [
+ {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "eastus2euap",
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "extensionProfile": {
+ "extensions": [
+ {
+ "name": "RDPExtension",
+ "properties": {
+ "autoUpgradeMinorVersion": false,
+ "provisioningState": "Succeeded",
+ "rolesAppliedTo": [
+ "*"
+ ],
+ "publisher": "Microsoft.Windows.Azure.Extensions",
+ "type": "RDP",
+ "typeHandlerVersion": "1.2.1",
+ "settings": "userazure01/12/2022 16:29:02"
+ }
+ }
+ ]
+ },
+ "provisioningState": "Succeeded",
+ "uniqueId": "4ccb4323-4740-4545-bb81-780b27375947"
+ }
+ }
+ ]
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/PowerOffCloudService.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/PowerOffCloudService.json
new file mode 100644
index 000000000000..4393d499357b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/PowerOffCloudService.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RebuildCloudServiceRoleInstance.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RebuildCloudServiceRoleInstance.json
new file mode 100644
index 000000000000..892c06e9a984
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RebuildCloudServiceRoleInstance.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RebuildCloudServiceRoleInstances.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RebuildCloudServiceRoleInstances.json
new file mode 100644
index 000000000000..9ccd9c6e8986
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RebuildCloudServiceRoleInstances.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01",
+ "parameters": {
+ "roleInstances": [
+ "ContosoFrontend_IN_0",
+ "ContosoBackend_IN_1"
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReimageCloudServiceRoleInstance.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReimageCloudServiceRoleInstance.json
new file mode 100644
index 000000000000..892c06e9a984
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReimageCloudServiceRoleInstance.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReimageCloudServiceRoleInstances.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReimageCloudServiceRoleInstances.json
new file mode 100644
index 000000000000..9ccd9c6e8986
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/ReimageCloudServiceRoleInstances.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01",
+ "parameters": {
+ "roleInstances": [
+ "ContosoFrontend_IN_0",
+ "ContosoBackend_IN_1"
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RestartCloudServiceRoleInstance.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RestartCloudServiceRoleInstance.json
new file mode 100644
index 000000000000..892c06e9a984
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RestartCloudServiceRoleInstance.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "roleInstanceName": "{roleInstance-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RestartCloudServiceRoleInstances.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RestartCloudServiceRoleInstances.json
new file mode 100644
index 000000000000..9ccd9c6e8986
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/RestartCloudServiceRoleInstances.json
@@ -0,0 +1,18 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01",
+ "parameters": {
+ "roleInstances": [
+ "ContosoFrontend_IN_0",
+ "ContosoBackend_IN_1"
+ ]
+ }
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/StartCloudService.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/StartCloudService.json
new file mode 100644
index 000000000000..4393d499357b
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/StartCloudService.json
@@ -0,0 +1,12 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateCloudServiceToIncludeTags.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateCloudServiceToIncludeTags.json
new file mode 100644
index 000000000000..09f35d83ca7a
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateCloudServiceToIncludeTags.json
@@ -0,0 +1,74 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "api-version": "2021-03-01",
+ "parameters": {
+ "tags": {
+ "Documentation": "RestAPI"
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "body": {
+ "name": "{cs-name}",
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Compute/cloudServices/{cs-name}",
+ "type": "Microsoft.Compute/cloudServices",
+ "location": "eastus2euap",
+ "tags": {
+ "Documentation": "RestAPI"
+ },
+ "properties": {
+ "configuration": "{ServiceConfiguration}",
+ "upgradeMode": "Auto",
+ "roleProfile": {
+ "roles": [
+ {
+ "name": "ContosoFrontend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ },
+ {
+ "name": "ContosoBackend",
+ "sku": {
+ "name": "Standard_D1_v2",
+ "tier": "Standard",
+ "capacity": 2
+ }
+ }
+ ]
+ },
+ "osProfile": {
+ "secrets": []
+ },
+ "networkProfile": {
+ "loadBalancerConfigurations": [
+ {
+ "name": "contosolb",
+ "properties": {
+ "frontendIPConfigurations": [
+ {
+ "name": "contosofe",
+ "properties": {
+ "publicIPAddress": {
+ "id": "/subscriptions/{subscription-id}/resourceGroups/ConstosoRG/providers/Microsoft.Network/publicIPAddresses/contosopublicip"
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ },
+ "provisioningState": "Updating",
+ "uniqueId": "4ccb4323-4740-4545-bb81-780b27375947"
+ }
+ }
+ }
+ }
+}
diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateCloudServiceUpdateDomain.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateCloudServiceUpdateDomain.json
new file mode 100644
index 000000000000..100a02e0ba4c
--- /dev/null
+++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2021-03-01/examples/UpdateCloudServiceUpdateDomain.json
@@ -0,0 +1,13 @@
+{
+ "parameters": {
+ "subscriptionId": "{subscription-id}",
+ "resourceGroupName": "ConstosoRG",
+ "cloudServiceName": "{cs-name}",
+ "updateDomain": 1,
+ "api-version": "2021-03-01"
+ },
+ "responses": {
+ "200": {},
+ "202": {}
+ }
+}
diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md
index d25eb60c827d..80652695642b 100644
--- a/specification/compute/resource-manager/readme.md
+++ b/specification/compute/resource-manager/readme.md
@@ -34,7 +34,7 @@ These are the global settings for the Compute API.
title: ComputeManagementClient
description: Compute Client
openapi-type: arm
-tag: package-2020-12-01
+tag: package-2021-03-01
directive:
- where:
@@ -207,8 +207,36 @@ directive:
- TrackedResourcePatchOperation
reason:
- ACS service is deprecated so a PATCH endpoint won't be implemented
+ - where:
+ - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/cloudServices/{cloudServiceName}/roleInstances/{roleInstanceName}/remoteDesktopFile"].get
+ suppress:
+ - D5001
+ reason: The API response has binary format and file type which is valid Swagger format. However, the example must be a JSON file which does not support specifying this response format.
```
+### Tag: package-2021-03-01
+
+These settings apply only when `--tag=package-2021-03-01` is specified on the command line.
+
+``` yaml $(tag) == 'package-2021-03-01'
+input-file:
+- Microsoft.Compute/stable/2020-12-01/compute.json
+- Microsoft.Compute/stable/2020-12-01/runCommands.json
+- Microsoft.Compute/stable/2019-04-01/skus.json
+- Microsoft.Compute/stable/2020-09-30/disk.json
+- Microsoft.Compute/stable/2019-12-01/gallery.json
+- Microsoft.Compute/stable/2021-03-01/cloudService.json
+```
+
+### Tag: package-2021-03-01-only
+
+These settings apply only when `--tag=package-2021-03-01-only` is specified on the command line.
+
+``` yaml $(tag) == 'package-2021-03-01-only'
+input-file:
+- Microsoft.Compute/stable/2021-03-01/cloudService.json
+```
+
### Tag: package-2020-12-01
These settings apply only when `--tag=package-2020-12-01` is specified on the command line.