Changelog

v4.0.13 - 2026-08-10

  • Pair the ports of a VM that share a network on their Sriov physical function, so that two Sriov interfaces attached to the same distributed portgroup (one per physical function, for redundancy) are no longer indistinguishable. Such interfaces used to abort every read with two or more objects with the same network paths on this vm, after the VM had already been reconfigured, which left an existing VM unable to converge. Several ports of a VM can now share a network in general, which used to be rejected outright: two vcenter::VirtualMachinePort on one portgroup are accepted as well. An Sriov interface is no longer paired with a regular nic either: a model that declares a vcenter::VirtualMachinePort on a network where the VM has an Sriov interface used to report nothing to do, and now replaces that interface with a regular nic, as the model asks. Declare a vcenter::SriovVirtualMachinePort for the Sriov interfaces that must be kept.

v4.0.12 - 2026-06-29

  • Expose memoryReservationLockedToMax on vcenter::vim::vm::ConfigSpec so the memory reservation lock is managed as part of the desired state. A VM with an Sriov interface must set it to true (a passthrough nic can only be powered on when all guest memory is reserved and locked); the handler now reads, diffs and (re)applies it like any other config attribute, so a VM that lost the flag (e.g. a clone that did not carry it) is repaired on the next deploy instead of failing to power on.

v4.0.11 - 2026-06-15

  • Lock the memory reservation to the configured memory (memoryReservationLockedToMax) when it is fully reserved, so a VM with an Sriov interface can be powered on (vCenter requires all guest memory to be reserved and locked).

v4.0.10 - 2026-06-11

  • Release the memory reservation when removing an Sriov interface: detach the nic first, power the VM off to lower the reservation (vCenter keeps a running VM fully preallocated) and unlock memoryReservationLockedToMax. Also require the reservation to be set when an Sriov interface is present.

v4.0.9 - 2026-05-27

  • Don’t reboot when removing an sriov interface

v4.0.8 - 2026-04-24

  • Add sriov_update_strategy to vm

v4.0.7 - 2026-03-25

  • Support IPv6 in ports

  • Fix race condition in guest tools wait that could cause ShutdownGuest to fail with ToolsUnavailable

v4.0.6 - 2026-03-03

  • Add VMFileUpload resource to upload file inside VirtualMachine

  • Add VMFileDownload resource to download file from VirtualMachine

v4.0.5 - 2025-12-19

  • Fix sriov nic update

v4.0.4 - 2025-11-18

  • Allow to specify the esxi hostname

  • Make cpu_num_per_socket optional

  • Add support for VirtualMachine guestId

  • Improve support for resolving by name instead of by path

  • Add onboarding VirtualMachine

  • Add support for attaching disk to vm prior to boot

  • Add VMShell resource to run program inside VirtualMachine

  • Add support for sriov nics

v4.0.3 - 2025-10-15

  • Expose disk uuid in resource facts

  • Add vsphere http connection timeout

v4.0.2 - 2025-08-18

  • Handle capitalization in uuid

v4.0.1 - 2025-01-10

  • Improve root disk identification

  • Fix include_main_disk for VMDK storage rule

v4.0.0 - 2024-11-25

  • Add cache for category tags and tags

  • Move to module v2

  • Fix discovery resource pydantic error

  • Make VM handler more resilient in case of config unavailable

v3.7.0 - 2024-11-14

  • Improve discovery resource robustness

  • Use vcenter naming for backing disk name

  • Add support for VirtualMachine memoryAllocation configuration

  • Add cpuAllocation/memoryAllocation support in discovery resource

v3.6.8 - 2024-10-29

  • Add support for VirtualMachine cpuAllocation configuration

v3.6.7 - 2024-10-08

  • Do gracefull shutdown on reboot

v3.6.6 - 2024-09-25

  • Fix vm from content library for OVF

v3.6.5 - 2024-08-29

  • Allow to deploy ovf/ova template from content library

  • Improve logging

v3.6.4 - 2024-08-12

  • Allow vm port to not specify ip/netmask

    • In that case the guest port will be configured to use DHCP if the skip_guest_customization flag is not set

  • Fix imports in vm discovery

v3.6.3 - 2024-07-16

  • Enforce order on ports when nic_index is not specified

  • Add VirtualMachine start_delay and stop_delay

  • Invert tag update order

v3.6.2 - 2024-06-27

  • Allow update the size of the root disk

v3.6.1 - 2024-06-24

  • Add dns config handler

v3.6.0 - 2024-06-04

  • Updated documention

  • Allow vm to be created from the content library

  • Allow reboot for CPU changes

  • Fix requires and provides relations of VMP and HostVirtualSwitch entities

  • Add folder_path attribute to CreateIso entity

v3.5.0 - 2024-05-06

  • Add support for TrunkVlanSpec

  • Add support for migrating a VM in another resource pool

v3.4.0 - 2024-03-27

  • Added support for renaming VM

  • Removed ESXIVirtualMachineFromTemplate as it is not supported on ESXI

v3.3.3 - 2024-03-19

  • Fix CreateIso issue:

    • No longer creating a folder with the same name as the ISO file

v3.3.2 - 2024-03-11

  • Add CreateIso resource

v3.3.1 - 2024-02-15

  • DVPG numPorts now ignored during update if autoExpand is set to true

v3.3.0 - 2024-01-15

  • Added support for co-management of tags. /!\ The co-management of tags will be enabled by default from this version. This can be disabled by setting tags_co_management to false in the VirtualMachine entity.

v3.2.0 - 2023-11-27

  • Added support for virtual machine discovery

  • Virtualdisk now skipped during creation if vm is not there

v3.1.1 - 2023-08-31

  • add support for netbox-secret integration

  • Fix a bug with VirtualDisk when a VM was moved (VM not found)

v3.1.0 - 2023-07-12

  • VirtualMachineToHostRule mandatory field exposed

v3.0.7 - 2023-05-16

  • Fix DVPG auto expand feature

v3.0.6 - 2023-05-15

  • Multiple esxi hosts supported in vm handler.

v3.0.5 - 2023-05-08

  • If we want to perform shutdown and other updates, first perform shutdown

  • Fix bug in tag handling where tags are removed and added back on update

v3.0.4 - 2023-04-12

  • Fix None network

  • add CDROM device to vm when its missing and iso image is specified

v3.0.3 - 2023-03-29

  • fix compatibility with python3.6 (missing typing.Protocol)

v3.0.2 - 2023-03-24

  • ignore_resource_pool_path attribute added to virtualmachine

v3.0.1 - 2023-03-23

  • vm disk path fixwhen folder already exists

  • Fix logging OVF file content

v3.0.0 - 2023-02-24

  • Add support for VMs on ESXI

  • Add support for vmkernel nic

  • Add support for auto start

v2.0.1 - 2023-01-30

  • Performance improvements when reading VirtualMachinePorts

2.0.0 - 2022-12-19

  • Enhance virtual machine disk management:

    • Import existing disks to start managing them.

    • Find disks back after virtual machine migration.

  • Add default null values to optional attributes for ISO6 compatibility.

  • Add support for pyvmomi 8.*

1.9.2 (2022/11/25)

  • Constrain pyvmomi < 8, due to https://github.com/vmware/pyvmomi/issues/993

1.9.1 (2022/11/15)

  • Fix bug where disable_hot_parameters_update is ignored

1.9.0 (2022/08/24)

  • Add support for Opaque Networks

  • Add NamedCredentials entity

  • Made VirtualMachinePort.ip_address and network_mask optional when skip_guest_customization is true

1.8.0 (2022/07/14)

  • Add nic_index attribute to VirtualMachinePort, allowing to control NICs order

1.7.2

  • Fix regex used for VMDK filenames to handle snapshots

1.7.1

  • Remove vlab-inf-common dependency

1.7.0

  • Add option to connect VM directly to a network

1.6.2

  • Fix incorrect module.yml in 1.6.1

1.6.1

  • Fix VM storage rule behavior when VM is redeployed

1.6.0

  • Add an option to search VMs for affinities by name

1.5.2

  • Fix on typing of folder helper

1.5.1

  • Fix bug on case sensitivity of tags

1.5.0

  • Added support to skip VM customization

1.4.0

  • Added support for Affinity rules

  • Various bug fixes

  • Make self-healing of VirtualMachine hot_* parameters optional

  • Add self-healing of VirtualMachine powerstate

1.3.2

  • Fixed bug on VM’s with no IP’s

1.3.1

  • Increased reconfiguration timeouts

1.3.0

  • Added thinProvisioning flag for VirtualDisk

  • Added no_create flag for VM

  • Added support for VM creation with vim.StoragePod as datastore

1.2.0

  • Fixed bug when attaching multiple tags

1.1.0

  • Added support to boot from OVA

  • Fixed VM to Host assignment

1.0.0

  • Added support for DistributedVirtualPortgroup

  • Added support for VirtualMachine, VirtualDisk and VirtualMachinePort