New in version 2.9.
The below requirements are needed on the host that executes this module.
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
| cluster  string  | The name of cluster where the virtual machine is running. This is a required parameter, if  esxi_hostnameis not set.esxi_hostnameandclusterare mutually exclusive parameters. | |
| datacenter  string  | The datacenter name to which virtual machine belongs to. | |
| esxi_hostname  string  | The ESXi hostname where the virtual machine is running. This is a required parameter, if  clusteris not set.esxi_hostnameandclusterare mutually exclusive parameters. | |
| folder  string  | Destination folder, absolute or relative path to find an existing guest. This is a required parameter, only if multiple VMs are found with same name. The folder should include the datacenter. ESXi server's datacenter is ha-datacenter. Examples: folder: /ha-datacenter/vm folder: ha-datacenter/vm folder: /datacenter1/vm folder: datacenter1/vm folder: /datacenter1/vm/folder1 folder: datacenter1/vm/folder1 folder: /folder1/datacenter1/vm folder: folder1/datacenter1/vm folder: /folder1/datacenter1/vm/folder2 | |
| hostname  string  | The hostname or IP address of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable  VMWARE_HOSTwill be used instead.Environment variable support added in Ansible 2.6. | |
| local_path  path  | If  local_pathis not set, the created screenshot file will be kept in the directory of the virtual machine on ESXi host. Iflocal_pathis set to a valid path on local machine, then the screenshot file will be downloaded from ESXi host to the local directory.If not download screenshot file to local machine, you can open it through the returned file URL in screenshot facts manually. | |
| moid  string  added in 2.9 | Managed Object ID of the instance to manage if known, this is a unique identifier only within a single vCenter instance. This is required if  nameoruuidis not supplied. | |
| name  string  | Name of the virtual machine. This is a required parameter, if parameter  uuidormoidis not supplied. | |
| password  string  | The password of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable  VMWARE_PASSWORDwill be used instead.Environment variable support added in Ansible 2.6. aliases: pass, pwd | |
| port  integer  added in 2.5 | Default: 443 | The port number of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable  VMWARE_PORTwill be used instead.Environment variable support added in Ansible 2.6. | 
| proxy_host  string  added in 2.9 | Address of a proxy that will receive all HTTPS requests and relay them. The format is a hostname or a IP. If the value is not specified in the task, the value of environment variable  VMWARE_PROXY_HOSTwill be used instead.This feature depends on a version of pyvmomi greater than v6.7.1.2018.12 | |
| proxy_port  integer  added in 2.9 | Port of the HTTP proxy that will receive all HTTPS requests and relay them. If the value is not specified in the task, the value of environment variable  VMWARE_PROXY_PORTwill be used instead. | |
| username  string  | The username of the vSphere vCenter or ESXi server. If the value is not specified in the task, the value of environment variable  VMWARE_USERwill be used instead.Environment variable support added in Ansible 2.6. aliases: admin, user | |
| uuid  string  | UUID of the instance to gather facts if known, this is VMware's unique identifier. This is a required parameter, if parameter  nameormoidis not supplied. | |
| validate_certs  boolean  | 
 | Allows connection when SSL certificates are not valid. Set to  falsewhen certificates are not trusted.If the value is not specified in the task, the value of environment variable  VMWARE_VALIDATE_CERTSwill be used instead.Environment variable support added in Ansible 2.6. If set to  yes, please make sure Python >= 2.7.9 is installed on the given machine. | 
Note
- name: take a screenshot of the virtual machine console
  vmware_guest_screenshot:
    validate_certs: no
    hostname: "{{ vcenter_hostname }}"
    username: "{{ vcenter_username }}"
    password: "{{ vcenter_password }}"
    datacenter: "{{ datacenter_name }}"
    folder: "{{ folder_name }}"
    name: "{{ vm_name }}"
    local_path: "/tmp/"
  delegate_to: localhost
  register: take_screenshot
- name: Take a screenshot of the virtual machine console using MoID
  vmware_guest_screenshot:
    validate_certs: no
    hostname: "{{ vcenter_hostname }}"
    username: "{{ vcenter_username }}"
    password: "{{ vcenter_password }}"
    datacenter: "{{ datacenter_name }}"
    folder: "{{ folder_name }}"
    moid: vm-42
    local_path: "/tmp/"
  delegate_to: localhost
  register: take_screenshot
   Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| screenshot_info  dictionary  | always | display the facts of captured virtual machine screenshot file Sample: {'virtual_machine': 'test_vm', 'screenshot_file': '[datastore0] test_vm/test_vm-1.png', 'task_start_time': '2019-05-25T10:35:04.215016Z', 'task_complete_time': '2019-05-25T10:35:04.412622Z', 'result': 'success', 'screenshot_file_url': 'https://test_vcenter/folder/test_vm/test_vm-1.png?dcPath=test-dc&dsName=datastore0', 'download_local_path': '/tmp/', 'download_file_size': 2367} | 
Hint
If you notice any issues in this documentation, you can edit this document to improve it.
    © 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
    https://docs.ansible.com/ansible/2.9/modules/vmware_guest_screenshot_module.html