ansible-collections / vmware.vmware_rest

Ansible Collection for VMWare (REST modules)
https://ansible-collections.github.io/vmware.vmware_rest/
GNU General Public License v3.0
132 stars 64 forks source link
ansible ansible-collection open-source python python3 rest rest-api vmware vsphere vsphere-sdk

Ansible Collection: vmware.vmware_rest

This repo hosts the vmware.vmware_rest Ansible Collection.

The vmware.vmware_rest collection is part of the Red Hat Ansible Certified Content for VMware offering that brings Ansible automation to VMware. This collection brings forward the possibility to manage vSphere resources and automate operator tasks.

This collection is based upon VMware vSphere REST API interface and does not rely on the VMware SDKs Pyvmomi and vSphere Automation SDK for Python.

System programmers can enable pipelines to setup, tear down and deploy VMs while system administrators can automate time consuming repetitive tasks inevitably freeing up their time. New VMware users can find comfort in Ansible's familiarity and expedite their proficiency in record time.

Known limitations

VM Template and folder structure

These modules are based on the vSphere REST API. This API doesn't provide any mechanism to list or clone VM templates when they are stored in a VM folder. To circumvent this limitation, you should store your VM templates in a Content Library.

Requirements

The host running the tasks must have the python requirements described in requirements.txt Once the collection is installed, you can install them into a python environment using pip: pip install -r ~/.ansible/collections/ansible_collections/vmware/vmware_rest/requirements.txt

vSphere compatibility

The 3.0.0 version of this collection supports vSphere 7.x. The 4.0.0 version of this collection supports vSphere 8.x.

Ansible version compatibility

This collection has been tested against following Ansible versions: >=2.15.0.

Installation

Before using this collection, you need to install it with the Ansible Galaxy command-line tool:

ansible-galaxy collection install vmware.vmware_rest

You can also include it in a requirements.yml file and install it with ansible-galaxy collection install -r requirements.yml, using the format:

collections:
  - name: vmware.vmware_rest

Note that if you install the collection from Ansible Galaxy, it will not be upgraded automatically when you upgrade the Ansible package. To upgrade the collection to the latest available version, run the following command:

ansible-galaxy collection install vmware.vmware_rest --upgrade

You can also install a specific version of the collection, for example, if you need to install a different version. Use the following syntax to install version 1.0.0:

ansible-galaxy collection install vmware.vmware_rest:1.0.0

Use Cases

Testing

All releases will meet the following test criteria.

Contributing

This community is currently accepting contributions. We encourage you to open git issues for bugs, comments or feature requests. Please feel free to submit a PR to resolve the issue. Modules are generated so changes to them most likely will not be applied directly.

Refer to the Ansible community guide.

Development

This collection can be generated using the content_builder tool. Please refer to the vmware module generation.

Communication

For more information about communication, see the Ansible communication guide.

Support

As Red Hat Ansible Certified Content, this collection is entitled to support through Ansible Automation Platform (AAP).

If a support case cannot be opened with Red Hat and the collection has been obtained either from Galaxy or GitHub, there is community support available at no charge. Community support is limited to the collection; community support does not include any of the Ansible Automation Platform components or ansible-core.

Release Notes and Roadmap

A list of available releases can be found on the github release page. A changelog may be found attached to the release, or in the CHANGELOG.rst

Note, some collections release before an ansible-core version reaches End of Life (EOL), thus the version of ansible-core that is supported must be a version that is currently supported. For AAP users, to see the supported ansible-core versions, review the AAP Life Cycle. For Galaxy and GitHub users, to see the supported ansible-core versions, review the ansible-core support matrix.

Related Information

The vmware.vmware collection offers additional functionality. It is also a certified collection. The community.vmware collection offers additional community supported functionality.

License Information

GNU General Public License v3.0 or later See LICENSE to see the full text.