/* * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is * regenerated. */ import * as msRest from "@azure/ms-rest-js"; import * as msRestAzure from "@azure/ms-rest-azure-js"; import * as Models from "../models"; import * as Mappers from "../models/virtualMachineScaleSetVMsMappers"; import * as Parameters from "../models/parameters"; import { ComputeManagementClientContext } from "../computeManagementClientContext"; /** Class representing a VirtualMachineScaleSetVMs. */ export class VirtualMachineScaleSetVMs { private readonly client: ComputeManagementClientContext; /** * Create a VirtualMachineScaleSetVMs. * @param {ComputeManagementClientContext} client Reference to the service client. */ constructor(client: ComputeManagementClientContext) { this.client = client; } /** * Reimages (upgrade the operating system) a specific virtual machine in a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ reimage(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.beginReimage(resourceGroupName,vmScaleSetName,instanceId,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Allows you to re-image all the disks ( including data disks ) in the a VM scale set instance. * This operation is only supported for managed disks. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ reimageAll(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.beginReimageAll(resourceGroupName,vmScaleSetName,instanceId,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Deallocates a specific virtual machine in a VM scale set. Shuts down the virtual machine and * releases the compute resources it uses. You are not billed for the compute resources of this * virtual machine once it is deallocated. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ deallocate(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.beginDeallocate(resourceGroupName,vmScaleSetName,instanceId,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Updates a virtual machine of a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set where the extension should be create or * updated. * @param instanceId The instance ID of the virtual machine. * @param parameters Parameters supplied to the Update Virtual Machine Scale Sets VM operation. * @param [options] The optional parameters * @returns Promise */ update(resourceGroupName: string, vmScaleSetName: string, instanceId: string, parameters: Models.VirtualMachineScaleSetVM, options?: msRest.RequestOptionsBase): Promise { return this.beginUpdate(resourceGroupName,vmScaleSetName,instanceId,parameters,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Deletes a virtual machine from a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ deleteMethod(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.beginDeleteMethod(resourceGroupName,vmScaleSetName,instanceId,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Gets a virtual machine from a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ get(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param callback The callback */ get(resourceGroupName: string, vmScaleSetName: string, instanceId: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param options The optional parameters * @param callback The callback */ get(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; get(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, vmScaleSetName, instanceId, options }, getOperationSpec, callback) as Promise; } /** * Gets the status of a virtual machine from a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ getInstanceView(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param callback The callback */ getInstanceView(resourceGroupName: string, vmScaleSetName: string, instanceId: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param options The optional parameters * @param callback The callback */ getInstanceView(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; getInstanceView(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, vmScaleSetName, instanceId, options }, getInstanceViewOperationSpec, callback) as Promise; } /** * Gets a list of all virtual machines in a VM scale sets. * @param resourceGroupName The name of the resource group. * @param virtualMachineScaleSetName The name of the VM scale set. * @param [options] The optional parameters * @returns Promise */ list(resourceGroupName: string, virtualMachineScaleSetName: string, options?: Models.VirtualMachineScaleSetVMsListOptionalParams): Promise; /** * @param resourceGroupName The name of the resource group. * @param virtualMachineScaleSetName The name of the VM scale set. * @param callback The callback */ list(resourceGroupName: string, virtualMachineScaleSetName: string, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group. * @param virtualMachineScaleSetName The name of the VM scale set. * @param options The optional parameters * @param callback The callback */ list(resourceGroupName: string, virtualMachineScaleSetName: string, options: Models.VirtualMachineScaleSetVMsListOptionalParams, callback: msRest.ServiceCallback): void; list(resourceGroupName: string, virtualMachineScaleSetName: string, options?: Models.VirtualMachineScaleSetVMsListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, virtualMachineScaleSetName, options }, listOperationSpec, callback) as Promise; } /** * Power off (stop) a virtual machine in a VM scale set. Note that resources are still attached and * you are getting charged for the resources. Instead, use deallocate to release resources and * avoid charges. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ powerOff(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.beginPowerOff(resourceGroupName,vmScaleSetName,instanceId,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Restarts a virtual machine in a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ restart(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.beginRestart(resourceGroupName,vmScaleSetName,instanceId,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Starts a virtual machine in a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ start(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.beginStart(resourceGroupName,vmScaleSetName,instanceId,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Redeploys a virtual machine in a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ redeploy(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.beginRedeploy(resourceGroupName,vmScaleSetName,instanceId,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Performs maintenance on a virtual machine in a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ performMaintenance(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.beginPerformMaintenance(resourceGroupName,vmScaleSetName,instanceId,options) .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; } /** * Reimages (upgrade the operating system) a specific virtual machine in a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginReimage(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmScaleSetName, instanceId, options }, beginReimageOperationSpec, options); } /** * Allows you to re-image all the disks ( including data disks ) in the a VM scale set instance. * This operation is only supported for managed disks. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginReimageAll(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmScaleSetName, instanceId, options }, beginReimageAllOperationSpec, options); } /** * Deallocates a specific virtual machine in a VM scale set. Shuts down the virtual machine and * releases the compute resources it uses. You are not billed for the compute resources of this * virtual machine once it is deallocated. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginDeallocate(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmScaleSetName, instanceId, options }, beginDeallocateOperationSpec, options); } /** * Updates a virtual machine of a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set where the extension should be create or * updated. * @param instanceId The instance ID of the virtual machine. * @param parameters Parameters supplied to the Update Virtual Machine Scale Sets VM operation. * @param [options] The optional parameters * @returns Promise */ beginUpdate(resourceGroupName: string, vmScaleSetName: string, instanceId: string, parameters: Models.VirtualMachineScaleSetVM, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmScaleSetName, instanceId, parameters, options }, beginUpdateOperationSpec, options); } /** * Deletes a virtual machine from a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginDeleteMethod(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmScaleSetName, instanceId, options }, beginDeleteMethodOperationSpec, options); } /** * Power off (stop) a virtual machine in a VM scale set. Note that resources are still attached and * you are getting charged for the resources. Instead, use deallocate to release resources and * avoid charges. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginPowerOff(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmScaleSetName, instanceId, options }, beginPowerOffOperationSpec, options); } /** * Restarts a virtual machine in a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginRestart(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmScaleSetName, instanceId, options }, beginRestartOperationSpec, options); } /** * Starts a virtual machine in a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginStart(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmScaleSetName, instanceId, options }, beginStartOperationSpec, options); } /** * Redeploys a virtual machine in a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginRedeploy(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmScaleSetName, instanceId, options }, beginRedeployOperationSpec, options); } /** * Performs maintenance on a virtual machine in a VM scale set. * @param resourceGroupName The name of the resource group. * @param vmScaleSetName The name of the VM scale set. * @param instanceId The instance ID of the virtual machine. * @param [options] The optional parameters * @returns Promise */ beginPerformMaintenance(resourceGroupName: string, vmScaleSetName: string, instanceId: string, options?: msRest.RequestOptionsBase): Promise { return this.client.sendLRORequest( { resourceGroupName, vmScaleSetName, instanceId, options }, beginPerformMaintenanceOperationSpec, options); } /** * Gets a list of all virtual machines in a VM scale sets. * @param nextPageLink The NextLink from the previous successful call to List operation. * @param [options] The optional parameters * @returns Promise */ listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param callback The callback */ listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param options The optional parameters * @param callback The callback */ listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { nextPageLink, options }, listNextOperationSpec, callback) as Promise; } } // Operation Specifications const serializer = new msRest.Serializer(Mappers); const getOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineScaleSetVM }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const getInstanceViewOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/instanceView", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineScaleSetVMInstanceView }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const listOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines", urlParameters: [ Parameters.resourceGroupName, Parameters.virtualMachineScaleSetName, Parameters.subscriptionId ], queryParameters: [ Parameters.filter, Parameters.select, Parameters.expand0, Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineScaleSetVMListResult }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginReimageOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimage", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginReimageAllOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimageall", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginDeallocateOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/deallocate", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginUpdateOperationSpec: msRest.OperationSpec = { httpMethod: "PUT", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], requestBody: { parameterPath: "parameters", mapper: { ...Mappers.VirtualMachineScaleSetVM, required: true } }, responses: { 200: { bodyMapper: Mappers.VirtualMachineScaleSetVM }, 202: { bodyMapper: Mappers.VirtualMachineScaleSetVM }, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginDeleteMethodOperationSpec: msRest.OperationSpec = { httpMethod: "DELETE", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, 204: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginPowerOffOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/poweroff", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginRestartOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/restart", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginStartOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/start", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginRedeployOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/redeploy", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const beginPerformMaintenanceOperationSpec: msRest.OperationSpec = { httpMethod: "POST", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/performMaintenance", urlParameters: [ Parameters.resourceGroupName, Parameters.vmScaleSetName, Parameters.instanceId, Parameters.subscriptionId ], queryParameters: [ Parameters.apiVersion0 ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.OperationStatusResponse }, 202: {}, default: { bodyMapper: Mappers.CloudError } }, serializer }; const listNextOperationSpec: msRest.OperationSpec = { httpMethod: "GET", baseUrl: "https://management.azure.com", path: "{nextLink}", urlParameters: [ Parameters.nextPageLink ], headerParameters: [ Parameters.acceptLanguage ], responses: { 200: { bodyMapper: Mappers.VirtualMachineScaleSetVMListResult }, default: { bodyMapper: Mappers.CloudError } }, serializer };