# Managed Object - VirtualMachineProvisioningChecker(vim.vm.check.ProvisioningChecker)

Property of
  ServiceContent
See also
  CheckResult, Folder, HostSystem, ResourcePool, VirtualMachine, VirtualMachineCloneSpec, VirtualMachineInstantCloneSpec, VirtualMachinePowerState, VirtualMachineRelocateSpec
Since
  vSphere API 4.0

## Managed Object Description

A singleton managed object that can answer questions about the feasibility of certain provisioning operations.

Properties

Name | Type | Description
--- | --- | ---
None

Methods

Methods defined in this Managed Object
CheckClone_Task, CheckInstantClone_Task, CheckMigrate_Task, CheckRelocate_Task, QueryVMotionCompatibilityEx_Task

# CheckClone_Task(checkClone)

Tests the feasibility of a proposed CloneVM_Task operation.

Required Privileges
  System.View
Since
  vSphere API 6.7

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualMachineProvisioningChecker used to make the method call.
vm P | ManagedObjectReference to a VirtualMachine | The virtual machine we propose to clone. Since vSphere API 4.0
folder P | ManagedObjectReference to a Folder | The location of the new virtual machine. Since vSphere API 4.0
name P | xsd:string | The name of the new virtual machine. Since vSphere API 4.0
spec P | VirtualMachineCloneSpec | Specifies how to clone the virtual machine. In cases where DRS would automatically select a host, all potential hosts are tested against. Since vSphere API 4.0
testType* P | xsd:string[] | The set of tests to run. If this argument is not set, all tests will be run. See CheckTestType for possible values. Since vSphere API 4.0

*Need not be set PRequired privilege - see tooltip for details

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task |

Faults

Type | Description
--- | ---
InvalidState | Thrown if the operation cannot be performed because of the virtual machine's current state. For example, if the virtual machine configuration information is not available.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# CheckInstantClone_Task(checkInstantClone)

Tests the feasibility of a proposed InstantClone_Task operation.

Required Privileges
  System.View
Since
  vSphere API 6.7

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualMachineProvisioningChecker used to make the method call.
vm P | ManagedObjectReference to a VirtualMachine | The virtual machine we propose to instant clone. Since vSphere API 6.7
spec P | VirtualMachineInstantCloneSpec | Specifies how to instant clone the virtual machine. Since vSphere API 6.7
testType* P | xsd:string[] | The set of tests to run. If this argument is not set, all tests will be run. See CheckTestType for possible values. Since vSphere API 6.7

*Need not be set PRequired privilege - see tooltip for details

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task |

Faults

Type | Description
--- | ---
InvalidState | Thrown if the operation cannot be performed because of the virtual machine's current state. For example, if the virtual machine configuration information is not available.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# CheckMigrate_Task(checkMigrate)

Tests the feasibility of a proposed MigrateVM_Task operation.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualMachineProvisioningChecker used to make the method call.
vm P | ManagedObjectReference to a VirtualMachine | The virtual machine we propose to migrate. Since vSphere API 4.0
host* P | ManagedObjectReference to a HostSystem | The target host on which the virtual machines will run. The host parameter may be left unset if the compute resource associated with the target pool represents a stand-alone host or a DRS-enabled cluster. In the former case the stand-alone host is used as the target host. In the latter case, each connected host in the cluster that is not in maintenance mode is tested as a target host. If the virtual machine is a template then either this parameter or the pool parameter must be set. Since vSphere API 4.0
pool* P | ManagedObjectReference to a ResourcePool | The target resource pool for the virtual machines. If the pool parameter is left unset, the target pool for each particular virtual machine's migration will be that virtual machine's current pool. If the virtual machine is a template then either this parameter or the host parameter must be set. The pool parameter must be set for testing the feasibility of migration to a different datacenter or different vCenter service. Since vSphere API 4.0
state* P | VirtualMachinePowerState | The power state that the virtual machines must have. If this argument is not set, each virtual machine is evaluated according to its current power state. Since vSphere API 4.0
testType* P | xsd:string[] | The set of tests to run. If this argument is not set, all tests will be run. See CheckTestType for possible values. Since vSphere API 4.0

*Need not be set PRequired privilege - see tooltip for details

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task |

Faults

Type | Description
--- | ---
InvalidPowerState | Thrown if the state argument is set and at least one of the specified virtual machines is not in that power state.
InvalidState |
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# CheckRelocate_Task(checkRelocate)

Tests the feasibility of a proposed RelocateVM_Task operation.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualMachineProvisioningChecker used to make the method call.
vm P | ManagedObjectReference to a VirtualMachine | The virtual machine we propose to relocate. Since vSphere API 4.0
spec P | VirtualMachineRelocateSpec | The specification of where to relocate the virtual machine. In cases where DRS would automatically select a host, all potential hosts are tested against. The host parameter in the spec may be left unset for checking feasibility of relocation to a different datacenter or different vCenter service, if the compute resource associated with the target pool represents a stand-alone host, the host is tested against, otherwise each connected host in the cluster that is not in maintenance mode represented by the target pool is tested as a target host. Since vSphere API 4.0
testType* P | xsd:string[] | The set of tests to run. If this argument is not set, all tests will be run. See CheckTestType for possible values. Since vSphere API 4.0

*Need not be set PRequired privilege - see tooltip for details

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task |

Faults

Type | Description
--- | ---
InvalidState | Thrown if the operation cannot be performed because of the host or virtual machine's current state. For example, if the host is in maintenance mode, or if the virtual machine's configuration information is not available.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# QueryVMotionCompatibilityEx_Task(queryVMotionCompatibilityEx)

Investigates the general VMotion compatibility of a set of virtual machines with a set of hosts. The virtual machine may be in any power state. Hosts may be in any connection state and also may be in maintenance mode.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualMachineProvisioningChecker used to make the method call.
vm P | ManagedObjectReference[] to a VirtualMachine[] | The set of virtual machines to analyze for compatibility. All virtual machines are assumed to be powered-on for the purposes of this operation. Since vSphere API 4.0
host P | ManagedObjectReference[] to a HostSystem[] | The set of hosts to analyze for compatibility. All hosts are assumed to be connected and not in maintenance mode for the purposes of this operation. Since vSphere API 4.0

PRequired privilege - see tooltip for details

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task |

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None