Ansible Values During OVF Deployment..

Software-based VM-centric and flash-friendly VM storage + free version
Post Reply
tryllz
Posts: 51
Joined: Sat Jul 10, 2021 9:12 am

Mon Aug 04, 2025 10:05 pm

Hi,

I'm trying to setup StarWind vSAN with Ansible, but am not able to pass the network configuration with Ansible.

The below values in the OVF file are the ones that are suppose to receive values during deployment, but they don't.
  • ovf:key="ipaddress"
  • ovf:key="netmask"
  • ovf:key="gateway"

Code: Select all

<Property ovf:userConfigurable="true" ovf:type="string" ovf:key="ipaddress">
    <Label>IPv4 address for Management interface</Label>
    <Description>IPv4 address for Management interface (example 192.168.1.100)</Description>
    </Property>
    <Property ovf:userConfigurable="true" ovf:type="string" ovf:key="netmask">
    <Label>IPv4 netmask for Management interface</Label>
    <Description>IPv4 netmask for Management interface (example 24)</Description>
    </Property>
    <Property ovf:userConfigurable="true" ovf:type="string" ovf:key="gateway">
    <Label>IPv4 gateway for Management interface</Label>
    <Description>IPv4 gateway for Management interface (example 192.168.1.1)</Description>
</Property>
Ansdible Code

Code: Select all

- hosts: server
  name: Deploy the StarWind to an ESXi Host
  gather_facts: false

  tasks:
  - vmware_deploy_ovf:
      hostname: '192.168.1.156'
      username: 'root'
      password: 'Password!'
      ovf: '/root/StarWindvSAN.ova'
      name: "SWND"
      datastore: Disk1
      networks:
        "Network 1": "Management"
        "Network 2": "Storage"
        "Network 3": "Storage"
      wait_for_ip_address: true
      validate_certs: no
      power_on: 'no'
      inject_ovf_env: true
      properties:
        ipaddress: '192.168.1.205'
        netmask: '24' # netmask length, CIDR notation, i.e. '24'
        gateway: '192.168.1.1'
    delegate_to: localhost
Anyone knows how to get this working.

Thanks.
yaroslav (staff)
Staff
Posts: 4309
Joined: Mon Nov 18, 2019 11:11 am

Tue Aug 05, 2025 7:14 am

Hi,

Thanks for your update! Those parameters should be optional (feel free to skip them).
tryllz
Posts: 51
Joined: Sat Jul 10, 2021 9:12 am

Tue Aug 05, 2025 12:15 pm

Hi,

Thanks for replying..

I understand the parameters are optional, I'm trying to get the parameters to receive input that is passed via Ansible during deployment..
Elijah Nelson
Posts: 1
Joined: Wed Aug 06, 2025 4:52 am
Contact:

Wed Aug 06, 2025 4:55 am

I'm running into the same issue — trying to deploy StarWind vSAN via Ansible and the network parameters in the OVF (ipaddress, netmask, gateway) just won’t populate during deployment. Not sure if it's an issue with the OVF environment settings or how Ansible is passing the values. Has anyone managed to get this working correctly?
obilyk
Posts: 2
Joined: Wed Aug 06, 2025 12:58 pm

Wed Aug 06, 2025 1:08 pm

Hi,

Could you share the Ansible logs?
tryllz
Posts: 51
Joined: Sat Jul 10, 2021 9:12 am

Wed Aug 06, 2025 1:57 pm

obilyk wrote:
Wed Aug 06, 2025 1:08 pm
Hi,

Could you share the Ansible logs?
Hi obilyk,

The IP address being assigned is 192.168.1.205, netmask is 24, and gateway is 192.168.1.1

Below is the log from Ansible..

Code: Select all

  2040 1754488116.41103: sending task start callback
  2040 1754488116.41105: entering _queue_task() for eur/vmware_deploy_ovf
  2040 1754488116.41106: Creating lock for vmware_deploy_ovf
  2040 1754488116.41252: worker is 1 (out of 1 available)
  2040 1754488116.41273: exiting _queue_task() for eur/vmware_deploy_ovf
  2040 1754488116.41307: done queuing things up, now waiting for results queue to drain
  2040 1754488116.41309: waiting for pending results...
  2044 1754488116.41328: running TaskExecutor() for eur/TASK: vmware_deploy_ovf
  2044 1754488116.41422: in run() - task 000c2996-da2a-0a8e-178a-000000000006
  2044 1754488116.41483: variable 'ansible_search_path' from source: unknown
  2044 1754488116.41499: calling self._execute()
  2044 1754488116.41544: in VariableManager get_vars()
  2044 1754488116.41591: Calling all_inventory to load vars for localhost
  2044 1754488116.41614: Calling groups_inventory to load vars for localhost
  2044 1754488116.41631: Calling all_plugins_inventory to load vars for localhost
  2044 1754488116.41695: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2044 1754488116.41702: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2044 1754488116.41738: Calling all_plugins_play to load vars for localhost
  2044 1754488116.41768: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2044 1754488116.41771: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2044 1754488116.41782: Calling groups_plugins_inventory to load vars for localhost
  2044 1754488116.41805: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2044 1754488116.41807: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2044 1754488116.41815: Calling groups_plugins_play to load vars for localhost
  2044 1754488116.41843: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2044 1754488116.41846: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2044 1754488116.41887: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2044 1754488116.41890: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2044 1754488116.41927: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2044 1754488116.41930: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2044 1754488116.41969: '/usr/local/lib/python3.9/site-packages/ansible/plugins/connection/__init__' skipped due to reserved name
  2044 1754488116.41983: done with get_vars()
  2044 1754488116.41985: variable 'inventory_hostname' from source: host vars for 'eur'
  2044 1754488116.42013: variable 'ansible_delegated_vars' from source: unknown
  2044 1754488116.42015: variable 'ansible_connection' from source: host vars for 'localhost'
  2044 1754488116.42016: no remote address found for delegated host localhost
using its name, so success depends on DNS resolution
  2044 1754488116.42017: variable 'ansible_user' from source: group vars, precedence entry 'all_inventory'
  2044 1754488116.42021: variable 'omit' from source: magic vars
  2044 1754488116.42072: variable 'omit' from source: magic vars
  2044 1754488116.42081: variable 'omit' from source: magic vars
  2044 1754488116.42108: variable 'omit' from source: magic vars
  2044 1754488116.42119: variable 'ansible_delegated_vars' from source: unknown
  2044 1754488116.42120: variable 'ansible_connection' from source: host vars for 'localhost'
  2044 1754488116.42121: variable 'ansible_connection' from source: host vars for 'localhost'
  2044 1754488116.42131: trying /usr/share/ansible/plugins/connection
  2044 1754488116.42178: trying /usr/local/lib/python3.9/site-packages/ansible/plugins/connection
  2044 1754488116.42218: Loading Connection 'local' from /usr/local/lib/python3.9/site-packages/ansible/plugins/connection/local.py (searched paths: /usr/local/lib/python3.9/site-packages/ansible/plugins/connection:/usr/share/ansible/plugins/connection) (found_in_cache=True, class_only=False)
  2044 1754488116.42231: trying /usr/local/lib/python3.9/site-packages/ansible/plugins/shell
  2044 1754488116.42255: Loading ShellModule 'sh' from /usr/local/lib/python3.9/site-packages/ansible/plugins/shell/sh.py (found_in_cache=True, class_only=False)
  2044 1754488116.42267: Loading ShellModule 'sh' from /usr/local/lib/python3.9/site-packages/ansible/plugins/shell/sh.py (found_in_cache=True, class_only=False)
  2044 1754488116.42296: Set connection var ansible_shell_executable to /bin/sh
  2044 1754488116.42297: Set connection var ansible_pipelining to False
  2044 1754488116.42298: Set connection var ansible_module_compression to ZIP_DEFLATED
  2044 1754488116.42298: Set connection var ansible_shell_type to sh
  2044 1754488116.42299: Set connection var ansible_timeout to 10
  2044 1754488116.42309: variable 'ansible_delegated_vars' from source: unknown
  2044 1754488116.42310: variable 'ansible_connection' from source: host vars for 'localhost'
  2044 1754488116.42310: variable 'ansible_user' from source: group vars, precedence entry 'all_inventory'
  2044 1754488116.42437: Loading ActionModule 'normal' from /usr/local/lib/python3.9/site-packages/ansible/plugins/action/normal.py (searched paths: /usr/share/ansible/plugins/action:/usr/local/lib/python3.9/site-packages/ansible/plugins/action/__pycache__:/usr/local/lib/python3.9/site-packages/ansible/plugins/action)
  2044 1754488116.42444: variable 'omit' from source: magic vars
  2044 1754488116.42446: starting attempt loop
  2044 1754488116.42447: running the handler
  2044 1754488116.42458: _low_level_execute_command(): starting
  2044 1754488116.42462: _low_level_execute_command(): executing: /bin/sh -c 'echo ~root && sleep 0'
  2044 1754488116.42465: in local.exec_command()
  2044 1754488116.42468: opening command with Popen()
  2044 1754488116.42646: done running command with Popen()
  2044 1754488116.42650: getting output with communicate()
  2044 1754488116.42902: done communicating
  2044 1754488116.42906: done with local.exec_command()
  2044 1754488116.42910: _low_level_execute_command() done: rc=0, stdout=/root
, stderr=
  2044 1754488116.42919: _low_level_execute_command(): starting
  2044 1754488116.42926: _low_level_execute_command(): executing: /bin/sh -c '( umask 77 && mkdir -p "` echo /root/.ansible/tmp `"&& mkdir "` echo /root/.ansible/tmp/ansible-tmp-1754488116.4291377-2044-56937635265446 `" && echo ansible-tmp-1754488116.4291377-2044-56937635265446="` echo /root/.ansible/tmp/ansible-tmp-1754488116.4291377-2044-56937635265446 `" ) && sleep 0'
  2044 1754488116.42928: in local.exec_command()
  2044 1754488116.42931: opening command with Popen()
  2044 1754488116.43078: done running command with Popen()
  2044 1754488116.43082: getting output with communicate()
  2044 1754488116.43500: done communicating
  2044 1754488116.43503: done with local.exec_command()
  2044 1754488116.43505: _low_level_execute_command() done: rc=0, stdout=ansible-tmp-1754488116.4291377-2044-56937635265446=/root/.ansible/tmp/ansible-tmp-1754488116.4291377-2044-56937635265446
, stderr=
  2044 1754488116.43523: variable 'ansible_delegated_vars' from source: unknown
  2044 1754488116.43609: ANSIBALLZ: Using lock for vmware_deploy_ovf
  2044 1754488116.43612: ANSIBALLZ: Acquiring lock
  2044 1754488116.43613: ANSIBALLZ: Lock acquired: 139824257549600
  2044 1754488116.43614: ANSIBALLZ: Creating module
  2044 1754488116.53553: ANSIBALLZ: Writing module into payload
  2044 1754488116.53657: ANSIBALLZ: Writing module
  2044 1754488116.53682: ANSIBALLZ: Renaming module
  2044 1754488116.53692: ANSIBALLZ: Done creating module
  2044 1754488116.53703: variable 'ansible_python_interpreter' from source: host vars for 'localhost'
  2044 1754488116.53721: transferring module to remote /root/.ansible/tmp/ansible-tmp-1754488116.4291377-2044-56937635265446/AnsiballZ_vmware_deploy_ovf.py
  2044 1754488116.53781: done transferring module to remote
  2044 1754488116.53790: _low_level_execute_command(): starting
  2044 1754488116.53793: _low_level_execute_command(): executing: /bin/sh -c 'chmod u+x /root/.ansible/tmp/ansible-tmp-1754488116.4291377-2044-56937635265446/ /root/.ansible/tmp/ansible-tmp-1754488116.4291377-2044-56937635265446/AnsiballZ_vmware_deploy_ovf.py && sleep 0'
  2044 1754488116.53794: in local.exec_command()
  2044 1754488116.53797: opening command with Popen()
  2044 1754488116.54024: done running command with Popen()
  2044 1754488116.54028: getting output with communicate()
  2044 1754488116.54308: done communicating
  2044 1754488116.54311: done with local.exec_command()
  2044 1754488116.54314: _low_level_execute_command() done: rc=0, stdout=, stderr=
  2044 1754488116.54315: _low_level_execute_command(): starting
  2044 1754488116.54323: _low_level_execute_command(): executing: /bin/sh -c '/usr/bin/python /root/.ansible/tmp/ansible-tmp-1754488116.4291377-2044-56937635265446/AnsiballZ_vmware_deploy_ovf.py && sleep 0'
  2044 1754488116.54325: in local.exec_command()
  2044 1754488116.54328: opening command with Popen()
  2044 1754488116.54467: done running command with Popen()
  2044 1754488116.54472: getting output with communicate()
  2044 1754488230.91230: done communicating
  2044 1754488230.91234: done with local.exec_command()
  2044 1754488230.91237: _low_level_execute_command() done: rc=0, stdout=
{"instance": {"module_hw": true, "hw_name": "SWND", "hw_power_status": "poweredOff", "hw_guest_full_name": null, "hw_guest_id": null, "hw_product_uuid": "564d3080-77b9-682f-6213-5714d6d41f04", "hw_processor_count": 8, "hw_cores_per_socket": 4, "hw_memtotal_mb": 12288, "hw_interfaces": ["eth0", "eth1", "eth2"], "hw_datastores": ["EUR_Disk1_VM"], "hw_files": ["[EUR_Disk1_VM] SWND/SWND.vmx", "[EUR_Disk1_VM] SWND/SWND.nvram", "[EUR_Disk1_VM] SWND/SWND.vmsd", "[EUR_Disk1_VM] SWND/SWND.vmdk"], "hw_esxi_host": "localhost.localdomain", "hw_guest_ha_state": null, "hw_is_template": false, "hw_folder": "/ha-datacenter/vm", "hw_version": "vmx-14", "instance_uuid": "529d55fc-9e44-15da-95f5-968660cb4d26", "guest_tools_status": "guestToolsNotRunning", "guest_tools_version": "11360", "guest_question": null, "guest_consolidation_needed": false, "ipv4": null, "ipv6": null, "annotation": "", "customvalues": {}, "snapshots": [], "current_snapshot": null, "vnc": {}, "moid": "5", "vimref": "vim.VirtualMachine:5", "advanced_settings": {"svga.present": "TRUE", "pciBridge0.present": "TRUE", "pciBridge4.present": "TRUE", "pciBridge4.virtualDev": "pcieRootPort", "pciBridge4.functions": "8", "pciBridge5.present": "TRUE", "pciBridge5.virtualDev": "pcieRootPort", "pciBridge5.functions": "8", "pciBridge6.present": "TRUE", "pciBridge6.virtualDev": "pcieRootPort", "pciBridge6.functions": "8", "pciBridge7.present": "TRUE", "pciBridge7.virtualDev": "pcieRootPort", "pciBridge7.functions": "8", "hpet0.present": "TRUE", "scsi0.pciSlotNumber": "16", "sata0.pciSlotNumber": "33", "vmci0.pciSlotNumber": "32", "ethernet0.pciSlotNumber": "160", "ethernet1.pciSlotNumber": "224", "ethernet2.pciSlotNumber": "256", "cpuid.coresPerSocket": "4", "nvram": "SWND.nvram", "disk.EnableUUID": "TRUE", "guestinfo.ovfEnv": "", "vmware.tools.internalversion": "11360", "vmware.tools.requiredversion": "12448", "migrate.hostLogState": "none", "migrate.migrationId": "0", "migrate.hostLog": ""}, "hw_cluster": null, "hw_eth0": {"addresstype": "generated", "label": "Network adapter 1", "macaddress": null, "ipaddresses": null, "macaddress_dash": null, "summary": "EUR_VL1130_Management", "portgroup_portkey": null, "portgroup_key": null}, "hw_eth1": {"addresstype": "generated", "label": "Network adapter 2", "macaddress": null, "ipaddresses": null, "macaddress_dash": null, "summary": "EUR_VL1140_Storage", "portgroup_portkey": null, "portgroup_key": null}, "hw_eth2": {"addresstype": "generated", "label": "Network adapter 3", "macaddress": null, "ipaddresses": null, "macaddress_dash": null, "summary": "EUR_VL1140_Storage", "portgroup_portkey": null, "portgroup_key": null}, "tpm_info": {"tpm_present": false, "provider_id": null}}, "changed": true, "invocation": {"module_args": {"hostname": "192.168.1.156", "username": "root", "password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER", "ovf": "/root/StarWindvSAN_19551_25Feb2025.ova", "name": "SWND", "datastore": "EUR_Disk1_VM", "networks": {"Network 1": "EUR_VL1130_Management", "Network 2": "EUR_VL1140_Storage", "Network 3": "EUR_VL1140_Storage"}, "wait_for_ip_address": true, "validate_certs": false, "power_on": false, "inject_ovf_env": true, "properties": {"ipaddress": "192.168.1.205", "netmask": "24", "gateway": "192.168.1.1"}, "port": 443, "datacenter": "ha-datacenter", "resource_pool": "Resources", "disk_provisioning": "thin", "enable_hidden_properties": false, "wait": true, "allow_duplicates": true, "fail_on_spec_warnings": false, "proxy_host": null, "proxy_port": null, "cluster": null, "esxi_hostname": null, "deployment_option": null, "folder": null, "url": null}}}
, stderr=
  2044 1754488230.91295: done with _execute_module (vmware_deploy_ovf, {'hostname': '192.168.1.156', 'username': 'root', 'password': 'HuuD8419', 'ovf': '/root/StarWindvSAN_19551_25Feb2025.ova', 'name': 'SWND', 'datastore': 'EUR_Disk1_VM', 'networks': {'Network 1': 'EUR_VL1130_Management', 'Network 2': 'EUR_VL1140_Storage', 'Network 3': 'EUR_VL1140_Storage'}, 'wait_for_ip_address': True, 'validate_certs': False, 'power_on': 'no', 'inject_ovf_env': True, 'properties': {'ipaddress': '192.168.1.205', 'netmask': '24', 'gateway': '192.168.1.1'}, '_ansible_check_mode': False, '_ansible_no_log': False, '_ansible_debug': True, '_ansible_diff': False, '_ansible_verbosity': 0, '_ansible_version': '2.15.13', '_ansible_module_name': 'vmware_deploy_ovf', '_ansible_syslog_facility': 'LOG_USER', '_ansible_selinux_special_fs': ['fuse', 'nfs', 'vboxsf', 'ramfs', '9p', 'vfat'], '_ansible_string_conversion_action': 'warn', '_ansible_socket': None, '_ansible_shell_executable': '/bin/sh', '_ansible_keep_remote_files': False, '_ansible_tmpdir': '/root/.ansible/tmp/ansible-tmp-1754488116.4291377-2044-56937635265446/', '_ansible_remote_tmp': '~/.ansible/tmp'})
  2044 1754488230.91302: _low_level_execute_command(): starting
  2044 1754488230.91310: _low_level_execute_command(): executing: /bin/sh -c 'rm -f -r /root/.ansible/tmp/ansible-tmp-1754488116.4291377-2044-56937635265446/ > /dev/null 2>&1 && sleep 0'
  2044 1754488230.91311: in local.exec_command()
  2044 1754488230.91319: opening command with Popen()
  2044 1754488230.91530: done running command with Popen()
  2044 1754488230.91537: getting output with communicate()
  2044 1754488230.91824: done communicating
  2044 1754488230.91826: done with local.exec_command()
  2044 1754488230.91830: _low_level_execute_command() done: rc=0, stdout=, stderr=
  2044 1754488230.91836: handler run complete
  2044 1754488230.91871: variable 'ansible_host' from source: unknown
  2044 1754488230.91872: variable 'ansible_port' from source: group vars, precedence entry 'all_inventory'
  2044 1754488230.91873: variable 'ansible_user' from source: group vars, precedence entry 'all_inventory'
  2044 1754488230.91874: variable 'ansible_connection' from source: host vars for 'localhost'
  2044 1754488230.91874: attempt loop complete, returning result
  2044 1754488230.91875: _execute() done
  2044 1754488230.91876: dumping result to json
  2044 1754488230.91880: done dumping result, returning
  2044 1754488230.91887: done running TaskExecutor() for eur/TASK: vmware_deploy_ovf [000c2996-da2a-0a8e-178a-000000000006]
  2044 1754488230.91889: sending task result for task 000c2996-da2a-0a8e-178a-000000000006
  2044 1754488230.91902: done sending task result for task 000c2996-da2a-0a8e-178a-000000000006
  2044 1754488230.91902: WORKER PROCESS EXITING
changed: [eur -> localhost]
  2040 1754488230.92184: no more pending results, returning what we have
  2040 1754488230.92188: results queue empty
  2040 1754488230.92190: checking for any_errors_fatal
  2040 1754488230.92191: done checking for any_errors_fatal
  2040 1754488230.92195: checking for max_fail_percentage
  2040 1754488230.92197: done checking for max_fail_percentage
  2040 1754488230.92198: checking to see if all hosts have failed and the running result is not ok
  2040 1754488230.92199: done checking to see if all hosts have failed
  2040 1754488230.92202: getting the remaining hosts for this loop
  2040 1754488230.92203: done getting the remaining hosts for this loop
  2040 1754488230.92210: getting the next task for host eur
  2040 1754488230.92216: done getting next task for host eur
  2040 1754488230.92220:  ^ task is: TASK: meta (flush_handlers)
  2040 1754488230.92223:  ^ state is: HOST STATE: block=3, task=1, rescue=0, always=0, handlers=0, run_state=IteratingStates.TASKS, fail_state=FailedStates.NONE, pre_flushing_run_state=IteratingStates.TASKS, update_handlers=True, pending_setup=False, tasks child state? (None), rescue child state? (None), always child state? (None), did rescue? False, did start at task? False
  2040 1754488230.92236: getting variables
  2040 1754488230.92244: in VariableManager get_vars()
  2040 1754488230.92273: Calling all_inventory to load vars for eur
  2040 1754488230.92280: Calling groups_inventory to load vars for eur
  2040 1754488230.92282: Calling all_plugins_inventory to load vars for eur
  2040 1754488230.92308: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92313: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92335: Calling all_plugins_play to load vars for eur
  2040 1754488230.92350: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92354: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92366: Calling groups_plugins_inventory to load vars for eur
  2040 1754488230.92375: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92381: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92393: Calling groups_plugins_play to load vars for eur
  2040 1754488230.92401: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92407: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92430: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92434: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92452: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92456: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92479: '/usr/local/lib/python3.9/site-packages/ansible/plugins/connection/__init__' skipped due to reserved name
  2040 1754488230.92494: done with get_vars()
  2040 1754488230.92502: done getting variables
  2040 1754488230.92523: in VariableManager get_vars()
  2040 1754488230.92532: Calling all_inventory to load vars for eur
  2040 1754488230.92536: Calling groups_inventory to load vars for eur
  2040 1754488230.92538: Calling all_plugins_inventory to load vars for eur
  2040 1754488230.92554: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92558: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92570: Calling all_plugins_play to load vars for eur
  2040 1754488230.92581: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92584: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92596: Calling groups_plugins_inventory to load vars for eur
  2040 1754488230.92606: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92611: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92627: Calling groups_plugins_play to load vars for eur
  2040 1754488230.92638: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92642: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92664: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92668: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92685: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92689: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92709: '/usr/local/lib/python3.9/site-packages/ansible/plugins/connection/__init__' skipped due to reserved name
  2040 1754488230.92721: done with get_vars()
  2040 1754488230.92735: done queuing things up, now waiting for results queue to drain
  2040 1754488230.92738: results queue empty
  2040 1754488230.92739: checking for any_errors_fatal
  2040 1754488230.92743: done checking for any_errors_fatal
  2040 1754488230.92744: checking for max_fail_percentage
  2040 1754488230.92745: done checking for max_fail_percentage
  2040 1754488230.92746: checking to see if all hosts have failed and the running result is not ok
  2040 1754488230.92747: done checking to see if all hosts have failed
  2040 1754488230.92750: getting the remaining hosts for this loop
  2040 1754488230.92752: done getting the remaining hosts for this loop
  2040 1754488230.92754: getting the next task for host eur
  2040 1754488230.92757: done getting next task for host eur
  2040 1754488230.92758:  ^ task is: TASK: meta (flush_handlers)
  2040 1754488230.92761:  ^ state is: HOST STATE: block=4, task=1, rescue=0, always=0, handlers=0, run_state=IteratingStates.TASKS, fail_state=FailedStates.NONE, pre_flushing_run_state=IteratingStates.TASKS, update_handlers=True, pending_setup=False, tasks child state? (None), rescue child state? (None), always child state? (None), did rescue? False, did start at task? False
  2040 1754488230.92764: getting variables
  2040 1754488230.92765: in VariableManager get_vars()
  2040 1754488230.92785: Calling all_inventory to load vars for eur
  2040 1754488230.92792: Calling groups_inventory to load vars for eur
  2040 1754488230.92796: Calling all_plugins_inventory to load vars for eur
  2040 1754488230.92821: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92827: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92850: Calling all_plugins_play to load vars for eur
  2040 1754488230.92866: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92869: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92892: Calling groups_plugins_inventory to load vars for eur
  2040 1754488230.92916: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92922: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.92941: Calling groups_plugins_play to load vars for eur
  2040 1754488230.92962: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.92968: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.93023: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.93034: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.93084: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.93094: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.93129: '/usr/local/lib/python3.9/site-packages/ansible/plugins/connection/__init__' skipped due to reserved name
  2040 1754488230.93148: done with get_vars()
  2040 1754488230.93164: done getting variables
  2040 1754488230.93193: in VariableManager get_vars()
  2040 1754488230.93214: Calling all_inventory to load vars for eur
  2040 1754488230.93218: Calling groups_inventory to load vars for eur
  2040 1754488230.93221: Calling all_plugins_inventory to load vars for eur
  2040 1754488230.93245: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.93253: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.93276: Calling all_plugins_play to load vars for eur
  2040 1754488230.93292: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.93298: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.93326: Calling groups_plugins_inventory to load vars for eur
  2040 1754488230.93347: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.93355: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.93375: Calling groups_plugins_play to load vars for eur
  2040 1754488230.93390: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.93394: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.93438: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.93444: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.93475: '/usr/local/lib/python3.9/site-packages/ansible/plugins/vars/__init__' skipped due to reserved name
  2040 1754488230.93481: Loading VarsModule 'host_group_vars' from /usr/local/lib/python3.9/site-packages/ansible/plugins/vars/host_group_vars.py (found_in_cache=True, class_only=False)
  2040 1754488230.93511: '/usr/local/lib/python3.9/site-packages/ansible/plugins/connection/__init__' skipped due to reserved name
  2040 1754488230.93545: done with get_vars()
  2040 1754488230.93594: done queuing things up, now waiting for results queue to drain
  2040 1754488230.93602: results queue empty
  2040 1754488230.93605: checking for any_errors_fatal
  2040 1754488230.93608: done checking for any_errors_fatal
  2040 1754488230.93610: checking for max_fail_percentage
  2040 1754488230.93612: done checking for max_fail_percentage
  2040 1754488230.93613: checking to see if all hosts have failed and the running result is not ok
  2040 1754488230.93614: done checking to see if all hosts have failed
  2040 1754488230.93615: getting the remaining hosts for this loop
  2040 1754488230.93617: done getting the remaining hosts for this loop
  2040 1754488230.93626: getting the next task for host eur
  2040 1754488230.93630: done getting next task for host eur
  2040 1754488230.93632:  ^ task is: None
  2040 1754488230.93639:  ^ state is: HOST STATE: block=5, task=0, rescue=0, always=0, handlers=0, run_state=IteratingStates.COMPLETE, fail_state=FailedStates.NONE, pre_flushing_run_state=IteratingStates.TASKS, update_handlers=True, pending_setup=False, tasks child state? (None), rescue child state? (None), always child state? (None), did rescue? False, did start at task? False
  2040 1754488230.93642: done queuing things up, now waiting for results queue to drain
  2040 1754488230.93643: results queue empty
  2040 1754488230.93645: checking for any_errors_fatal
  2040 1754488230.93646: done checking for any_errors_fatal
  2040 1754488230.93647: checking for max_fail_percentage
  2040 1754488230.93650: done checking for max_fail_percentage
  2040 1754488230.93652: checking to see if all hosts have failed and the running result is not ok
  2040 1754488230.93653: done checking to see if all hosts have failed
  2040 1754488230.93655: getting the next task for host eur
  2040 1754488230.93658: done getting next task for host eur
  2040 1754488230.93660:  ^ task is: None
  2040 1754488230.93661:  ^ state is: HOST STATE: block=5, task=0, rescue=0, always=0, handlers=0, run_state=IteratingStates.COMPLETE, fail_state=FailedStates.NONE, pre_flushing_run_state=IteratingStates.TASKS, update_handlers=True, pending_setup=False, tasks child state? (None), rescue child state? (None), always child state? (None), did rescue? False, did start at task? False

PLAY RECAP ************************************************************************************************************************************************************************
eur                        : ok=1    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
tanjum
Posts: 34
Joined: Mon Jul 21, 2025 12:02 pm

Wed Aug 06, 2025 2:28 pm

Elijah Nelson wrote:
Wed Aug 06, 2025 4:55 am
I'm running into the same issue — trying to deploy StarWind vSAN via Ansible and the network parameters in the OVF (ipaddress, netmask, gateway) just won’t populate during deployment. Not sure if it's an issue with the OVF environment settings or how Ansible is passing the values. Has anyone managed to get this working correctly?
I'm unsure myself where is the issue, because when the network information is manually added, it populates in the VM once it boots, just does not work when done via Ansible..
obilyk
Posts: 2
Joined: Wed Aug 06, 2025 12:58 pm

Tue Aug 12, 2025 11:02 am

Hi,

I found solution for this issue, these property are part of class: mgmnt. So you should use full name of property, like:

Code: Select all

mgmnt.ipaddress: '192.168.1.205'
mgmnt.netmask: '24' # netmask length, CIDR notation, i.e. '24'
mgmnt.gateway: '192.168.1.1'
The OVF template also has a mandatory property (boolean type) services.ssh.

It works for me:

Code: Select all

 properties:
        mgmnt.ipaddress: '192.168.53.51'
        mgmnt.netmask: '23' # netmask length, CIDR notation, i.e. '24'
        mgmnt.gateway: '192.168.52.1'
        services.ssh: true
tryllz
Posts: 51
Joined: Sat Jul 10, 2021 9:12 am

Tue Aug 12, 2025 11:52 am

obilyk wrote:
Tue Aug 12, 2025 11:02 am
Hi,

I found solution for this issue, these property are part of class: mgmnt. So you should use full name of property, like:

Code: Select all

mgmnt.ipaddress: '192.168.1.205'
mgmnt.netmask: '24' # netmask length, CIDR notation, i.e. '24'
mgmnt.gateway: '192.168.1.1'
The OVF template also has a mandatory property (boolean type) services.ssh.

It works for me:

Code: Select all

 properties:
        mgmnt.ipaddress: '192.168.53.51'
        mgmnt.netmask: '23' # netmask length, CIDR notation, i.e. '24'
        mgmnt.gateway: '192.168.52.1'
        services.ssh: true
Excellent, thanks obilyk, will test this out..
Post Reply