VirtualMachinesOperations Class

Warning

DO NOT instantiate this class directly.

Instead, you should access the following operations through

ComputeManagementClient's

<xref:virtual_machines> attribute.

Inheritance
builtins.object
VirtualMachinesOperations

Constructor

VirtualMachinesOperations(*args, **kwargs)

Methods

begin_assess_patches

Assess patches on the VM.

begin_attach_detach_data_disks

Attach and detach data disks to/from the virtual machine.

begin_capture

Captures the VM by copying virtual hard disks of the VM and outputs a template that can be used to create similar VMs.

begin_convert_to_managed_disks

Converts virtual machine disks from blob-based to managed disks. Virtual machine must be stop-deallocated before invoking this operation.

begin_create_or_update

The operation to create or update a virtual machine. Please note some properties can be set only during virtual machine creation.

begin_deallocate

Shuts down the virtual machine and releases the compute resources. You are not billed for the compute resources that this virtual machine uses.

begin_delete

The operation to delete a virtual machine.

begin_install_patches

Installs patches on the VM.

begin_perform_maintenance

The operation to perform maintenance on a virtual machine.

begin_power_off

The operation to power off (stop) a virtual machine. The virtual machine can be restarted with the same provisioned resources. You are still charged for this virtual machine.

begin_reapply

The operation to reapply a virtual machine's state.

begin_redeploy

Shuts down the virtual machine, moves it to a new node, and powers it back on.

begin_reimage

Reimages (upgrade the operating system) a virtual machine which don't have a ephemeral OS disk, for virtual machines who have a ephemeral OS disk the virtual machine is reset to initial state. NOTE: The retaining of old OS disk depends on the value of deleteOption of OS disk. If deleteOption is detach, the old OS disk will be preserved after reimage. If deleteOption is delete, the old OS disk will be deleted after reimage. The deleteOption of the OS disk should be updated accordingly before performing the reimage.

begin_restart

The operation to restart a virtual machine.

begin_run_command

Run command on the VM.

begin_start

The operation to start a virtual machine.

begin_update

The operation to update a virtual machine.

generalize

Sets the OS state of the virtual machine to generalized. It is recommended to sysprep the virtual machine before performing this operation. For Windows, please refer to Create a managed image of a generalized VM in Azure. For Linux, please refer to How to create an image of a virtual machine or VHD.

get

Retrieves information about the model view or the instance view of a virtual machine.

instance_view

Retrieves information about the run-time state of a virtual machine.

list

Lists all of the virtual machines in the specified resource group. Use the nextLink property in the response to get the next page of virtual machines.

list_all

Lists all of the virtual machines in the specified subscription. Use the nextLink property in the response to get the next page of virtual machines.

list_available_sizes

Lists all available virtual machine sizes to which the specified virtual machine can be resized.

list_by_location

Gets all the virtual machines under the specified subscription for the specified location.

retrieve_boot_diagnostics_data

The operation to retrieve SAS URIs for a virtual machine's boot diagnostic logs.

simulate_eviction

The operation to simulate the eviction of spot virtual machine.

begin_assess_patches

Assess patches on the VM.

async begin_assess_patches(resource_group_name: str, vm_name: str, **kwargs: Any) -> AsyncLROPoller[VirtualMachineAssessPatchesResult]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Returns

Type Description

An instance of AsyncLROPoller that returns either VirtualMachineAssessPatchesResult or the result of cls(response)

Exceptions

Type Description

begin_attach_detach_data_disks

Attach and detach data disks to/from the virtual machine.

async begin_attach_detach_data_disks(resource_group_name: str, vm_name: str, parameters: _models.AttachDetachDataDisksRequest, *, content_type: str = 'application/json', **kwargs: Any) -> AsyncLROPoller[_models.StorageProfile]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

parameters
Required

Parameters supplied to the attach and detach data disks operation on the virtual machine. Is either a AttachDetachDataDisksRequest type or a IO[bytes] type. Required.

Returns

Type Description

An instance of AsyncLROPoller that returns either StorageProfile or the result of cls(response)

Exceptions

Type Description

begin_capture

Captures the VM by copying virtual hard disks of the VM and outputs a template that can be used to create similar VMs.

async begin_capture(resource_group_name: str, vm_name: str, parameters: _models.VirtualMachineCaptureParameters, *, content_type: str = 'application/json', **kwargs: Any) -> AsyncLROPoller[_models.VirtualMachineCaptureResult]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

parameters
Required

Parameters supplied to the Capture Virtual Machine operation. Is either a VirtualMachineCaptureParameters type or a IO[bytes] type. Required.

Returns

Type Description

An instance of AsyncLROPoller that returns either VirtualMachineCaptureResult or the result of cls(response)

Exceptions

Type Description

begin_convert_to_managed_disks

Converts virtual machine disks from blob-based to managed disks. Virtual machine must be stop-deallocated before invoking this operation.

async begin_convert_to_managed_disks(resource_group_name: str, vm_name: str, **kwargs: Any) -> AsyncLROPoller[None]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Returns

Type Description

An instance of AsyncLROPoller that returns either None or the result of cls(response)

Exceptions

Type Description

begin_create_or_update

The operation to create or update a virtual machine. Please note some properties can be set only during virtual machine creation.

async begin_create_or_update(resource_group_name: str, vm_name: str, parameters: _models.VirtualMachine, *, if_match: str | None = None, if_none_match: str | None = None, content_type: str = 'application/json', **kwargs: Any) -> AsyncLROPoller[_models.VirtualMachine]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

parameters
Required

Parameters supplied to the Create Virtual Machine operation. Is either a VirtualMachine type or a IO[bytes] type. Required.

Keyword-Only Parameters

Name Description
if_match
str

The ETag of the transformation. Omit this value to always overwrite the current resource. Specify the last-seen ETag value to prevent accidentally overwriting concurrent changes. Default value is None.

if_none_match
str

Set to '*' to allow a new record set to be created, but to prevent updating an existing record set. Other values will result in error from server as they are not supported. Default value is None.

Returns

Type Description

An instance of AsyncLROPoller that returns either VirtualMachine or the result of cls(response)

Exceptions

Type Description

begin_deallocate

Shuts down the virtual machine and releases the compute resources. You are not billed for the compute resources that this virtual machine uses.

async begin_deallocate(resource_group_name: str, vm_name: str, *, hibernate: bool | None = None, **kwargs: Any) -> AsyncLROPoller[None]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Keyword-Only Parameters

Name Description
hibernate

Optional parameter to hibernate a virtual machine. Default value is None.

Returns

Type Description

An instance of AsyncLROPoller that returns either None or the result of cls(response)

Exceptions

Type Description

begin_delete

The operation to delete a virtual machine.

async begin_delete(resource_group_name: str, vm_name: str, *, force_deletion: bool | None = None, **kwargs: Any) -> AsyncLROPoller[None]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Keyword-Only Parameters

Name Description
force_deletion

Optional parameter to force delete virtual machines. Default value is None.

Returns

Type Description

An instance of AsyncLROPoller that returns either None or the result of cls(response)

Exceptions

Type Description

begin_install_patches

Installs patches on the VM.

async begin_install_patches(resource_group_name: str, vm_name: str, install_patches_input: _models.VirtualMachineInstallPatchesParameters, *, content_type: str = 'application/json', **kwargs: Any) -> AsyncLROPoller[_models.VirtualMachineInstallPatchesResult]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

install_patches_input
Required

Input for InstallPatches as directly received by the API. Is either a VirtualMachineInstallPatchesParameters type or a IO[bytes] type. Required.

Returns

Type Description

An instance of AsyncLROPoller that returns either VirtualMachineInstallPatchesResult or the result of cls(response)

Exceptions

Type Description

begin_perform_maintenance

The operation to perform maintenance on a virtual machine.

async begin_perform_maintenance(resource_group_name: str, vm_name: str, **kwargs: Any) -> AsyncLROPoller[None]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Returns

Type Description

An instance of AsyncLROPoller that returns either None or the result of cls(response)

Exceptions

Type Description

begin_power_off

The operation to power off (stop) a virtual machine. The virtual machine can be restarted with the same provisioned resources. You are still charged for this virtual machine.

async begin_power_off(resource_group_name: str, vm_name: str, *, skip_shutdown: bool = False, **kwargs: Any) -> AsyncLROPoller[None]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Keyword-Only Parameters

Name Description
skip_shutdown

The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified. Default value is False.

Returns

Type Description

An instance of AsyncLROPoller that returns either None or the result of cls(response)

Exceptions

Type Description

begin_reapply

The operation to reapply a virtual machine's state.

async begin_reapply(resource_group_name: str, vm_name: str, **kwargs: Any) -> AsyncLROPoller[None]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Returns

Type Description

An instance of AsyncLROPoller that returns either None or the result of cls(response)

Exceptions

Type Description

begin_redeploy

Shuts down the virtual machine, moves it to a new node, and powers it back on.

async begin_redeploy(resource_group_name: str, vm_name: str, **kwargs: Any) -> AsyncLROPoller[None]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Returns

Type Description

An instance of AsyncLROPoller that returns either None or the result of cls(response)

Exceptions

Type Description

begin_reimage

Reimages (upgrade the operating system) a virtual machine which don't have a ephemeral OS disk, for virtual machines who have a ephemeral OS disk the virtual machine is reset to initial state. NOTE: The retaining of old OS disk depends on the value of deleteOption of OS disk. If deleteOption is detach, the old OS disk will be preserved after reimage. If deleteOption is delete, the old OS disk will be deleted after reimage. The deleteOption of the OS disk should be updated accordingly before performing the reimage.

async begin_reimage(resource_group_name: str, vm_name: str, parameters: _models.VirtualMachineReimageParameters | None = None, *, content_type: str = 'application/json', **kwargs: Any) -> AsyncLROPoller[None]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

parameters
Required

Parameters supplied to the Reimage Virtual Machine operation. Is either a VirtualMachineReimageParameters type or a IO[bytes] type. Default value is None.

Returns

Type Description

An instance of AsyncLROPoller that returns either None or the result of cls(response)

Exceptions

Type Description

begin_restart

The operation to restart a virtual machine.

async begin_restart(resource_group_name: str, vm_name: str, **kwargs: Any) -> AsyncLROPoller[None]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Returns

Type Description

An instance of AsyncLROPoller that returns either None or the result of cls(response)

Exceptions

Type Description

begin_run_command

Run command on the VM.

async begin_run_command(resource_group_name: str, vm_name: str, parameters: _models.RunCommandInput, *, content_type: str = 'application/json', **kwargs: Any) -> AsyncLROPoller[_models.RunCommandResult]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

parameters
Required

Parameters supplied to the Run command operation. Is either a RunCommandInput type or a IO[bytes] type. Required.

Returns

Type Description

An instance of AsyncLROPoller that returns either RunCommandResult or the result of cls(response)

Exceptions

Type Description

begin_start

The operation to start a virtual machine.

async begin_start(resource_group_name: str, vm_name: str, **kwargs: Any) -> AsyncLROPoller[None]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Returns

Type Description

An instance of AsyncLROPoller that returns either None or the result of cls(response)

Exceptions

Type Description

begin_update

The operation to update a virtual machine.

async begin_update(resource_group_name: str, vm_name: str, parameters: _models.VirtualMachineUpdate, *, if_match: str | None = None, if_none_match: str | None = None, content_type: str = 'application/json', **kwargs: Any) -> AsyncLROPoller[_models.VirtualMachine]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

parameters
Required

Parameters supplied to the Update Virtual Machine operation. Is either a VirtualMachineUpdate type or a IO[bytes] type. Required.

Keyword-Only Parameters

Name Description
if_match
str

The ETag of the transformation. Omit this value to always overwrite the current resource. Specify the last-seen ETag value to prevent accidentally overwriting concurrent changes. Default value is None.

if_none_match
str

Set to '*' to allow a new record set to be created, but to prevent updating an existing record set. Other values will result in error from server as they are not supported. Default value is None.

Returns

Type Description

An instance of AsyncLROPoller that returns either VirtualMachine or the result of cls(response)

Exceptions

Type Description

generalize

Sets the OS state of the virtual machine to generalized. It is recommended to sysprep the virtual machine before performing this operation. For Windows, please refer to Create a managed image of a generalized VM in Azure. For Linux, please refer to How to create an image of a virtual machine or VHD.

async generalize(resource_group_name: str, vm_name: str, **kwargs: Any) -> None

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Returns

Type Description

None or the result of cls(response)

Exceptions

Type Description

get

Retrieves information about the model view or the instance view of a virtual machine.

async get(resource_group_name: str, vm_name: str, *, expand: str | InstanceViewTypes | None = None, **kwargs: Any) -> VirtualMachine

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Keyword-Only Parameters

Name Description
expand

The expand expression to apply on the operation. 'InstanceView' retrieves a snapshot of the runtime properties of the virtual machine that is managed by the platform and can change outside of control plane operations. 'UserData' retrieves the UserData property as part of the VM model view that was provided by the user during the VM Create/Update operation. Known values are: "instanceView" and "userData". Default value is None.

Returns

Type Description

VirtualMachine or the result of cls(response)

Exceptions

Type Description

instance_view

Retrieves information about the run-time state of a virtual machine.

async instance_view(resource_group_name: str, vm_name: str, **kwargs: Any) -> VirtualMachineInstanceView

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Returns

Type Description

VirtualMachineInstanceView or the result of cls(response)

Exceptions

Type Description

list

Lists all of the virtual machines in the specified resource group. Use the nextLink property in the response to get the next page of virtual machines.

list(resource_group_name: str, *, filter: str | None = None, expand: str | ExpandTypeForListVMs | None = None, **kwargs: Any) -> AsyncIterable[VirtualMachine]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

Keyword-Only Parameters

Name Description
filter
str

The system query option to filter VMs returned in the response. Allowed value is 'virtualMachineScaleSet/id' eq /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmssName}'. Default value is None.

expand

The expand expression to apply on operation. 'instanceView' enables fetching run time status of all Virtual Machines, this can only be specified if a valid $filter option is specified. "instanceView" Default value is None.

Returns

Type Description

An iterator like instance of either VirtualMachine or the result of cls(response)

Exceptions

Type Description

list_all

Lists all of the virtual machines in the specified subscription. Use the nextLink property in the response to get the next page of virtual machines.

list_all(*, status_only: str | None = None, filter: str | None = None, expand: str | ExpandTypesForListVMs | None = None, **kwargs: Any) -> AsyncIterable[VirtualMachine]

Keyword-Only Parameters

Name Description
status_only
str

statusOnly=true enables fetching run time status of all Virtual Machines in the subscription. Default value is None.

filter
str

The system query option to filter VMs returned in the response. Allowed value is 'virtualMachineScaleSet/id' eq /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmssName}'. Default value is None.

expand

The expand expression to apply on operation. 'instanceView' enables fetching run time status of all Virtual Machines, this can only be specified if a valid $filter option is specified. "instanceView" Default value is None.

Returns

Type Description

An iterator like instance of either VirtualMachine or the result of cls(response)

Exceptions

Type Description

list_available_sizes

Lists all available virtual machine sizes to which the specified virtual machine can be resized.

list_available_sizes(resource_group_name: str, vm_name: str, **kwargs: Any) -> AsyncIterable[VirtualMachineSize]

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Returns

Type Description

An iterator like instance of either VirtualMachineSize or the result of cls(response)

Exceptions

Type Description

list_by_location

Gets all the virtual machines under the specified subscription for the specified location.

list_by_location(location: str, **kwargs: Any) -> AsyncIterable[VirtualMachine]

Parameters

Name Description
location
Required
str

The location for which virtual machines under the subscription are queried. Required.

Returns

Type Description

An iterator like instance of either VirtualMachine or the result of cls(response)

Exceptions

Type Description

retrieve_boot_diagnostics_data

The operation to retrieve SAS URIs for a virtual machine's boot diagnostic logs.

async retrieve_boot_diagnostics_data(resource_group_name: str, vm_name: str, *, sas_uri_expiration_time_in_minutes: int | None = None, **kwargs: Any) -> RetrieveBootDiagnosticsDataResult

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Keyword-Only Parameters

Name Description
sas_uri_expiration_time_in_minutes
int

Expiration duration in minutes for the SAS URIs with a value between 1 to 1440 minutes. Note: If not specified, SAS URIs will be generated with a default expiration duration of 120 minutes. Default value is None.

Returns

Type Description

RetrieveBootDiagnosticsDataResult or the result of cls(response)

Exceptions

Type Description

simulate_eviction

The operation to simulate the eviction of spot virtual machine.

async simulate_eviction(resource_group_name: str, vm_name: str, **kwargs: Any) -> None

Parameters

Name Description
resource_group_name
Required
str

The name of the resource group. Required.

vm_name
Required
str

The name of the virtual machine. Required.

Returns

Type Description

None or the result of cls(response)

Exceptions

Type Description

Attributes

models

models = <module 'azure.mgmt.compute.v2024_03_01.models' from 'C:\\hostedtoolcache\\windows\\Python\\3.11.9\\x64\\Lib\\site-packages\\azure\\mgmt\\compute\\v2024_03_01\\models\\__init__.py'>