From b5899db6407cacf3bc9f90e1e7ee597f42b46bc4 Mon Sep 17 00:00:00 2001 From: Pratyush Nalam Date: Sun, 4 Mar 2018 23:14:11 -0800 Subject: [PATCH 1/3] Adding 2 new APIs for VMSS: Redeploy and PerformMaintenance --- .../stable/2017-12-01/compute.json | 108 ++++++++++++++++++ 1 file changed, 108 insertions(+) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json index e5c238d4d561..82309530a3f1 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json @@ -2689,6 +2689,110 @@ "x-ms-long-running-operation": true } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/redeploy": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Redeploy", + "description": "Redeploy one or more virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_PerformMaintenance", + "description": "Perform maintenance on one or more virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/manualupgrade": { "post": { "tags": [ @@ -6732,6 +6836,10 @@ "$ref": "#/definitions/VirtualMachineAgentInstanceView", "description": "The VM Agent running on the virtual machine." }, + "maintenanceRedeployStatus": { + "$ref": "#/definitions/MaintenanceRedeployStatus", + "description": "The Maintenance Operation status on the virtual machine." + }, "disks": { "type": "array", "items": { From d8c0a3aaf9efa3493c1ef5e636e91e00baa8b5b1 Mon Sep 17 00:00:00 2001 From: Pratyush Nalam Date: Mon, 5 Mar 2018 00:29:24 -0800 Subject: [PATCH 2/3] Adding the APIs for single VM in VMSS case too --- .../stable/2017-12-01/compute.json | 100 ++++++++++++++++++ 1 file changed, 100 insertions(+) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json index 82309530a3f1..db198dec9a31 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json @@ -3687,6 +3687,106 @@ "x-ms-long-running-operation": true } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/redeploy": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Redeploy", + "description": "Redeploys a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_PerformMaintenance", + "description": "Performs maintenance on a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatusResponse" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getRequestRateByInterval": { "post": { "tags": [ From f0eb2b0e5c0a7e8be089ee568e0275ab2cb5cc1e Mon Sep 17 00:00:00 2001 From: Pratyush Nalam Date: Thu, 8 Mar 2018 13:48:27 -0800 Subject: [PATCH 3/3] Updating a parameter --- .../Microsoft.Compute/stable/2017-12-01/compute.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json index db198dec9a31..33b9795c7c3a 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json @@ -2714,9 +2714,9 @@ { "name": "vmInstanceIDs", "in": "body", - "required": true, + "required": false, "schema": { - "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" }, "description": "A list of virtual machine instance IDs from the VM scale set." }, @@ -2766,9 +2766,9 @@ { "name": "vmInstanceIDs", "in": "body", - "required": true, + "required": false, "schema": { - "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" }, "description": "A list of virtual machine instance IDs from the VM scale set." },