community.vmware 6.4.0 Released - Whats New and How to Test

Introduction

community.vmware is the Ansible collection that provides modules and plugins for automating VMware vSphere infrastructure, covering vCenter, ESXi hosts, clusters, datastores, virtual machines, and content libraries. It is one of the most widely used collections for private cloud and virtualization automation with Ansible.

Version 6.4.0 has been published on Ansible Galaxy, bumping up from 6.3.0. Unlike a typical patch release, this version does not add new modules or fix bugs directly. Instead, it formally deprecates a large batch of internal module_utils functions and methods that are used across many modules in the collection. All of these deprecations are tracked under a single pull request, PR #2599, and are scheduled for removal in community.vmware 8.0.0.

Whats New

Deprecated module_utils Functions and Methods

The following functions and methods in plugins.module_utils.vmware and plugins.module_utils.vmware_rest_client are now marked as deprecated. They still work in 6.4.0, but playbook authors and, more importantly, module and role developers relying on these internals should plan a migration path before community.vmware 8.0.0 ships.

ModuleDeprecated symbolTypeRemoval target
module_utils.vmwarefind_host_by_cluster_datacenterfunction8.0.0
module_utils.vmwarevmware_argument_specfunction8.0.0
module_utils.vmwarePyVmomi.get_all_hosts_by_clustermethod8.0.0
module_utils.vmwarePyVmomi.get_folder_pathmethod8.0.0
module_utils.vmwarePyVmomi.vcenter_version_at_leastmethod8.0.0
module_utils.vmware_rest_clientVMwareRestClient.get_cluster_by_namemethod8.0.0
module_utils.vmware_rest_clientVMwareRestClient.get_datacenter_by_namemethod8.0.0
module_utils.vmware_rest_clientVMwareRestClient.get_datastore_by_namemethod8.0.0
module_utils.vmware_rest_clientVMwareRestClient.get_host_by_namemethod8.0.0
module_utils.vmware_rest_clientVMwareRestClient.get_library_item_by_namemethod8.0.0
module_utils.vmware_rest_clientVMwareRestClient.get_library_item_from_content_library_namemethod8.0.0
module_utils.vmware_rest_clientVMwareRestClient.get_resource_pool_by_namemethod8.0.0
module_utils.vmware_rest_clientVMwareRestClient.get_tags_for_clustermethod8.0.0
module_utils.vmware_rest_clientVMwareRestClient.vmware_client_argument_specmethod8.0.0

All fourteen deprecations point back to the same source: PR #2599, which consolidates internal cleanup of the vmware and vmware_rest_client module_utils in preparation for a larger refactor planned for the 8.0.0 major release.

Impact on Existing Playbooks

End users writing standard playbooks and roles that only call the public modules (e.g. community.vmware.vmware_guest, community.vmware.vmware_host_facts, etc.) are not directly affected, since these are internal helper functions consumed by the modules themselves, not part of the public playbook-facing API. However, anyone maintaining custom modules, action plugins, or forks that import directly from community.vmware.plugins.module_utils.vmware or vmware_rest_client should start looking for replacement APIs before 8.0.0 lands, since these calls will start raising DeprecationWarning in supported Ansible-core versions and will be removed outright afterward.

Installation and Verification

Upgrade the collection to 6.4.0 with ansible-galaxy and confirm the installed version.

# Install/upgrade community.vmware to 6.4.0
ansible-galaxy collection install community.vmware:6.4.0 --force

# Verify the installed version
ansible-galaxy collection list community.vmware

# Inspect the changelog directly from the installed collection
ansible-doc --list community.vmware | head -20

# Trigger deprecation warnings by running a module that uses the deprecated helpers
ANSIBLE_DEPRECATION_WARNINGS=True ansible-playbook -i localhost, my_vmware_test.yml -vvv

If managing dependencies through a requirements.yml file, pin the version explicitly:

cat <<'EOF' > requirements.yml
collections:
  - name: community.vmware
    version: 6.4.0
EOF

ansible-galaxy collection install -r requirements.yml

Conclusion

community.vmware 6.4.0 is primarily a deprecation-notice release: no new modules, no bugfixes, just a formal heads-up that fourteen internal module_utils functions and methods will disappear in community.vmware 8.0.0. Regular playbook users can upgrade without any action required, while collection and module maintainers building on top of community.vmware should track PR #2599 and plan their migration ahead of the next major version.