vcenter_extension – Register/deregister vCenter Extensions

New in version 2.8.

Synopsis

  • This module can be used to register/deregister vCenter Extensions.

Requirements

The below requirements are needed on the host that executes this module.

  • python >= 2.6
  • PyVmomi

Parameters

Parameter Choices/Defaults Comments
client_type
string
Default:
"vsphere-client-serenity"
Required for state=present. Type of client the extension is (win32, .net, linux, etc.).
company
string
Required for state=present. The name of the company that makes the extension.
description
string
Required for state=present. A short description of the extension.
email
string
Required for state=present. Administrator email to use for extension.
extension_key
string / required
The extension key of the extension to install or uninstall.
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_HOST will be used instead.
Environment variable support added in Ansible 2.6.
name
string
Required for state=present. The name of the extension you are installing.
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_PASSWORD will 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_PORT will 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_HOST will 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_PORT will be used instead.
server_type
string
Default:
"vsphere-client-serenity"
Required for state=present. Type of server being used to install the extension (SOAP, REST, HTTP, etc.).
ssl_thumbprint
string
Required for state=present. SSL thumbprint of the extension hosting server.
state
string
    Choices:
  • absent
  • present ←
Add or remove vCenter Extension.
url
string
Required for state=present. Link to server hosting extension zip file to install.
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_USER will be used instead.
Environment variable support added in Ansible 2.6.

aliases: admin, user
validate_certs
boolean
    Choices:
  • no
  • yes ←
Allows connection when SSL certificates are not valid. Set to false when certificates are not trusted.
If the value is not specified in the task, the value of environment variable VMWARE_VALIDATE_CERTS will 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.
version
string / required
The version of the extension you are installing or uninstalling.
visible
boolean
    Choices:
  • no
  • yes ←
Show the extension in solution manager inside vCenter.

Notes

Note

  • Tested on vSphere 6.5

Examples

- name: Register vCenter Extension
  vcenter_extension:
     hostname: "{{ groups['vcsa'][0] }}"
     username: "{{ vcenter_username }}"
     password: "{{ site_password }}"
     extension_key: "{{ extension_key }}"
     version: "1.0"
     company: "Acme"
     name: "Acme Extension"
     description: "acme management"
     email: "user@example.com"
     url: "https://10.0.0.1/ACME-vSphere-web-plugin-1.0.zip"
     ssl_thumbprint: "{{ ssl_thumbprint }}"
     state: present
  delegate_to: localhost
  register: register_extension

- name: Deregister vCenter Extension
  vcenter_extension:
     hostname: "{{ groups['vcsa'][0] }}"
     username: "{{ vcenter_username }}"
     password: "{{ site_password }}"
     extension_key: "{{ extension_key }}"
     version: "1.0"
     state: absent
  delegate_to: localhost
  register: deregister_extension

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
result
string
always
information about performed operation

Sample:
'com.acme.Extension' installed.


Status

Authors

  • Michael Tipton (@castawayegr)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.