create-vm.yml

---
- name: create vm
  hosts: localhost
  become: false
  gather_facts: false
  tasks:
    - name: create folder
      community.vmware.vcenter_folder:
        hostname: 192.168.1.13
        username: administrator@vsphere.local
        password: VMware1!
        validate_certs: no
        datacenter: dc1
        folder_name: ansible
        folder_type: vm
        state: present
    - name: create VM
      community.vmware.vmware_guest:
        hostname: 192.168.1.13
        username: administrator@vsphere.local
        password: VMware1!
        validate_certs: no
        datacenter: dc1
        name: ansible-test-box
        folder: ansible
        state: poweredon
        guest_id: otherGuest64
        cluster: cl1
        disk:
          - size_gb: 20
            type: thin
            datastore: ds1-2tb
        hardware:
          memory_mb: 4096
          num_cpus: 2
        networks:
          - name: vms
            connected: true
            start_connected: true
            device_type: "vmxnet3"
            type: "static"
            ip: "192.168.1.128"
            netmask: "255.255.255.0"
            gateway: "192.168.1.1"
            dns_servers: "192.168.1.11"
        cdrom:
        - controller_number: 0
          unit_number: 0
          state: present
          type: iso
          iso_path: "[ds1-2tb] ISO/CentOS-Stream-10-latest-x86_64-dvd1.iso"

By Kad