VMware Host - List running VMs
Declaration
<AMVMWAREVM ACTIVITY="list_runningvms" SESSION="text" HOSTTYPE="text (options)" SERVER="text" USERNAME="text" PASSWORD="text (encrypted)" CONNECTIONTIMEOUT="number" RESULTDATASET="text" />
Description
Retrieves all running virtual machines and populates a dataset with the results. The dataset returns plenty of information, such as path, display name, power state, allocated memory and CPU count. Can also determine if the running VM is paused, recording, replaying, suspended and much more.
Practical usage
Ideally used as a means to manage multiple VMs in a running state.
Parameters
Connection
Property | Type | Required | Default | Markup | Description |
---|---|---|---|---|---|
Connection | --- | --- | --- | --- | Indicates where
this activity's connection properties should originate from. Different
parameters become active depending on the option selected. This
is a visual parameter used only during design-time, therefore,
contains no properties or markups. The available options are:
|
Session | Text | Yes, if Connection is set to Session | VMOpsSession1 | SESSION="VMO101" | The name of a session (created in a previous VWmware Host - Connect step) in which to link this activity. This parameter is active only if the Connection parameter is set to Session. |
Host type | Text (options) | Yes, if Connection is set to Host | VIServer |
|
The type of VM
host to establish a connection with. This parameter is active
only if the Connection
parameter is set to Host.
The available options are:
|
Host name | Text | Yes | (Empty) | SERVER="host.server.com" | The hostname or IP address of the computer where the virtual machine is located. This parameter is active only if the Host type parameter is set to VMware Server (1.0x) or VMware VI Server (ESX/ESXi, vCenter, VMware Server 2.0). |
Username | Text | No | (Empty) | USERNAME="MsPacman" | The username identifying a valid user account on the machine. This parameter is active only if the Host type parameter is set to VMware Server (1.0x) or VMware VI Server (ESX/ESXi, vCenter, VMware Server 2.0). |
Password | Text | No | (Empty) | PASSWORD="encrypted" | The password identifying a valid user account on the machine. This parameter is active only if the Host type parameter is set to VMware Server (1.0x) or VMware VI Server (ESX/ESXi, vCenter, VMware Server 2.0). |
Connection timeout | Number | No | 60 | CONNECTIONTIMEOUT="50" | The maximum time period in seconds during which a connection must be established between the guest and host, otherwise, the step times out. The default value is 60 seconds. |
Virtual Machine
Property | Type | Required | Default | Markup | Description |
---|---|---|---|---|---|
Create and populate dataset with Virtual Machine information | Text | Yes | (Empty) | RESULTATASET="theDataset" | The name of the dataset in which to create and populate with the list of running VMs. More details regarding the fields that this dataset creates can be found below under Datasets. |
Additional notes
Datasets
A dataset is a multiple column, multiple row container object. This activity creates and populates a dataset containing a specific set of fields in addition to the standard dataset fields. The table below describes these fields (assuming the dataset assigned is named theDataset).
Name | Type | Return Value |
---|---|---|
theDataset.CPUCount | Number | Returns the number of processors. |
theDataset.IsPaused | True/False | Returns whether the running VM is paused. True if it paused, false if it is not paused. |
theDataset.IsRecording | True/False | Returns true if the running VM is recording, false if it is not. |
theDataset.IsReplaying | True/False | Returns true if the running VM is replaying, otherwise returns false. |
theDataset.IsRunning | True/False | Returns true if the VM is running, false if it is not. |
theDataset.IsSuspended | True/False | Returns true if the running VM is suspended, false if it is not. |
theDataset.MemorySize | Number | Returns the total memory size allocated to the running VM. |
theDataset.PathName | Text | Returns the path of the running VM. Example: [HPvd01_001] WinServer2008x64_1/WinServer2008x64.vmx |
theDataset.PowerState | Number | Returns the power state of the running VM. |
Example
- Copy and paste the sample AML code below directly into the Task Builder Steps Panel.
- To successfully run the sample code, update parameters containing user credentials, files, file paths, or other information specific to the task to match your environment.
Description
This sample task retrieves all running VMs and populates a dataset with the result. It then loops through the dataset and displays the path name of each running VM in a message box.
<!-- Create virtual machine connection of host type "Workstation" / Create and start session named "VMOpsSession1" -->
<AMVMWAREVM ACTIVITY="connect" HOSTTYPE="Workstation" SESSION="VMOpsSession1" />
<!-- Power on virtual OS image -->
<AMVMWAREVM SESSION="VMOpsSession1" VMPATH="F:\Virtual Machines\Windows Server 2008 x64\Windows Server 2008 x64 Edition.vmx" LAUNCHGUI="YES" />
<!-- List registered VMs -->
<AMVMWAREVM ACTIVITY="list_runningvms" SESSION="VMOpsSession1" RESULTDATASET="theData" />
<AMLOOP ACTIVITY="dataset" DATASET="theData" />
<AMSHOWDIALOG WINDOWTITLE="Running VM path">VM path name - %theData.PathName%</AMSHOWDIALOG>
<AMLOOP ACTIVITY="end" />
<!-- Power off virtual machine -->
<AMVMWAREVM ACTIVITY="poweroff_vm" SESSION="VMOpsSession1" VMPATH="F:\Virtual Machines\Windows 10 x86\Windows 10.vmx" TIMEOUT="3" OPENVMTIMEOUT="3" SOFT="YES" TOOLSTIMEOUT="3" />
<!-- Disconnect virtual machine connection / End session -->
<AMVMWAREVM ACTIVITY="disconnect" SESSION="VMOpsSession1" />