From 7c4b9b7488faa0b7b5e2c68fe1daafb5e115e8af Mon Sep 17 00:00:00 2001 From: Mike Morency Date: Tue, 6 Aug 2024 09:52:00 -0400 Subject: [PATCH] update modules from community to vmware.vmware --- roles/cluster_settings/tasks/main.yml | 2 +- roles/provision_vcenter/tasks/main.yml | 13 +- .../tasks/deploy_new_esxi_hosts.yml | 16 +-- roles/provision_virtual_esxi/tasks/main.yml | 8 +- .../export_vm_as_ovf_content_library.yml | 6 +- .../tasks/test_deploy_ovf.yml | 18 +-- .../tasks/main.yml | 24 ++-- .../tasks/cleanup_esxi.yml | 4 +- .../tasks/main.yml | 134 +++++++++--------- .../tasks/provision_esxi.yml | 12 +- 10 files changed, 114 insertions(+), 123 deletions(-) diff --git a/roles/cluster_settings/tasks/main.yml b/roles/cluster_settings/tasks/main.yml index 00a0cc69..592f477a 100644 --- a/roles/cluster_settings/tasks/main.yml +++ b/roles/cluster_settings/tasks/main.yml @@ -27,7 +27,7 @@ when: cluster_settings_dpm_enable is defined - name: Configure DRS Settings - community.vmware.vmware_cluster_drs: + vmware.vmware.cluster_drs: hostname: "{{ cluster_settings_hostname }}" username: "{{ cluster_settings_username }}" password: "{{ cluster_settings_password }}" diff --git a/roles/provision_vcenter/tasks/main.yml b/roles/provision_vcenter/tasks/main.yml index 8cb4520f..71f04a47 100644 --- a/roles/provision_vcenter/tasks/main.yml +++ b/roles/provision_vcenter/tasks/main.yml @@ -3,26 +3,19 @@ ansible.builtin.include_tasks: validate_inputs.yml - name: Check If VCenter Already Exists - community.vmware.vmware_guest_info: + vmware.vmware.guest_info: hostname: "{{ provision_vcenter_hostname }}" username: "{{ provision_vcenter_username }}" password: "{{ provision_vcenter_password }}" port: "{{ provision_vcenter_port | default(omit) }}" validate_certs: "{{ provision_vcenter_validate_certs | default(omit) }}" - datacenter: "{{ provision_vcenter_vc_target_datacenter | default('') }}" + datacenter: "{{ provision_vcenter_vc_target_datacenter | default(omit) }}" name: "{{ provision_vcenter_vm_name }}" register: _vcenter_lookup failed_when: false -- name: Fail If There Was An Unexpected Error Looking Up The Guest Info - ansible.builtin.fail: - msg: "{{ _vcenter_lookup.stderr | default(_vcenter_lookup.msg) }}" - when: >- - _vcenter_lookup.instance is not defined and - _vcenter_lookup.msg is not match("Unable to gather information for non-existing VM .*") - - name: Create Instance From ISO - when: _vcenter_lookup.instance is not defined or not _vcenter_lookup.instance + when: not _vcenter_lookup.guests block: - name: Gather Required OS Facts ansible.builtin.setup: diff --git a/roles/provision_virtual_esxi/tasks/deploy_new_esxi_hosts.yml b/roles/provision_virtual_esxi/tasks/deploy_new_esxi_hosts.yml index a9214ecd..220cd583 100644 --- a/roles/provision_virtual_esxi/tasks/deploy_new_esxi_hosts.yml +++ b/roles/provision_virtual_esxi/tasks/deploy_new_esxi_hosts.yml @@ -28,7 +28,7 @@ num_cpus: "{{ _esxi.cpus | default(provision_virtual_esxi_cpus) }}" boot_firmware: "{{ provision_virtual_esxi_boot_firmware }}" nested_virt: true - when: _result.instance is not defined or not _result.instance + when: not _result.guests loop: "{{ _esxi_host_check.results }}" loop_control: loop_var: _result @@ -48,30 +48,30 @@ provision_vm_folder: "{{ provision_virtual_esxi_folder | default(omit) }}" provision_vm_name: "{{ _result._esxi.name }}" provision_vm_state: poweredon - when: _result.instance is not defined or not _result.instance + when: not _result.guests loop: "{{ _esxi_host_check.results }}" loop_control: loop_var: _result label: _result._esxi.name - name: Wait for New ESXi Deployment - community.vmware.vmware_guest_info: + vmware.vmware.guest_info: hostname: "{{ provision_virtual_esxi_hostname }}" username: "{{ provision_virtual_esxi_username }}" password: "{{ provision_virtual_esxi_password }}" - datacenter: "{{ provision_virtual_esxi_datacenter | default('') }}" + datacenter: "{{ provision_virtual_esxi_datacenter | default(omit) }}" port: "{{ provision_virtual_esxi_port | default(omit) }}" validate_certs: "{{ provision_virtual_esxi_validate_certs | default(omit) }}" name: "{{ _result._esxi.name }}" - when: _result.instance is not defined or not _result.instance + when: not _result.guests loop: "{{ _esxi_host_check.results }}" loop_control: loop_var: _result label: _result._esxi.name register: _new_esxi_info until: >- - _new_esxi_info.instance is defined and - (_new_esxi_info.instance.hw_power_status == 'poweredOff' or - _new_esxi_info.instance.ipv4 or _new_esxi_info.instance.ipv6) + _new_esxi_info.guests and + (_new_esxi_info.guests[0].hw_power_status == 'poweredOff' or + _new_esxi_info.guests[0].ipv4 or _new_esxi_info.guests[0].ipv6) retries: 30 delay: 15 diff --git a/roles/provision_virtual_esxi/tasks/main.yml b/roles/provision_virtual_esxi/tasks/main.yml index d20ffed3..90a737bc 100644 --- a/roles/provision_virtual_esxi/tasks/main.yml +++ b/roles/provision_virtual_esxi/tasks/main.yml @@ -11,12 +11,12 @@ fail_msg: Variable must be set when using this role. - name: Check For Missing Hosts - community.vmware.vmware_guest_info: + vmware.vmware.guest_info: hostname: "{{ provision_virtual_esxi_hostname }}" username: "{{ provision_virtual_esxi_username }}" password: "{{ provision_virtual_esxi_password }}" port: "{{ provision_virtual_esxi_port | default(omit) }}" - datacenter: "{{ provision_virtual_esxi_datacenter | default('') }}" + datacenter: "{{ provision_virtual_esxi_datacenter | default(omit) }}" validate_certs: "{{ provision_virtual_esxi_validate_certs | default(omit) }}" name: "{{ _esxi.name }}" failed_when: false @@ -27,9 +27,7 @@ label: _esxi.name - name: Include New ESXi Hosts Tasks - when: >- - (_esxi_host_check.results | selectattr('instance', 'undefined') is any) or - (_esxi_host_check.results | selectattr('instance', 'defined') | map(attribute='instance') is not all) + when: (_esxi_host_check.results | map(attribute='guests') is not all) block: - name: Check VM Mandatory Variables Are Defined ansible.builtin.assert: diff --git a/tests/integration/targets/vmware_ops_deploy_ovf_test/tasks/export_vm_as_ovf_content_library.yml b/tests/integration/targets/vmware_ops_deploy_ovf_test/tasks/export_vm_as_ovf_content_library.yml index 982e6b43..f2b1a474 100644 --- a/tests/integration/targets/vmware_ops_deploy_ovf_test/tasks/export_vm_as_ovf_content_library.yml +++ b/tests/integration/targets/vmware_ops_deploy_ovf_test/tasks/export_vm_as_ovf_content_library.yml @@ -1,6 +1,6 @@ --- - name: Get VM Info - community.vmware.vmware_guest_info: + vmware.vmware.guest_info: hostname: "{{ vcenter_hostname }}" username: "{{ vcenter_username }}" password: "{{ vcenter_password }}" @@ -52,9 +52,9 @@ vcenter_validate_certs: false source: type: VirtualMachine - id: "{{ vm_info.instance.moid }}" + id: "{{ vm_info.guests[0].moid }}" target: library_id: "{{ content_library_id }}" create_spec: name: "{{ ovf_library_item_name }}" - state: present \ No newline at end of file + state: present diff --git a/tests/integration/targets/vmware_ops_deploy_ovf_test/tasks/test_deploy_ovf.yml b/tests/integration/targets/vmware_ops_deploy_ovf_test/tasks/test_deploy_ovf.yml index e5e8d1e6..f558f87c 100644 --- a/tests/integration/targets/vmware_ops_deploy_ovf_test/tasks/test_deploy_ovf.yml +++ b/tests/integration/targets/vmware_ops_deploy_ovf_test/tasks/test_deploy_ovf.yml @@ -1,6 +1,6 @@ --- - name: Get VM Info - community.vmware.vmware_guest_info: + vmware.vmware.guest_info: hostname: "{{ vcenter_hostname }}" username: "{{ vcenter_username }}" password: "{{ vcenter_password }}" @@ -12,15 +12,15 @@ - name: Check Properties Of VM {{ item }} ansible.builtin.assert: that: - - guest_info.instance.hw_cluster == deploy_ovf_cluster_name - - guest_info.instance.hw_folder == deploy_ovf_folder - - guest_info.instance.hw_name == item - - guest_info.instance.hw_datastores == [deploy_ovf_datastore] - - guest_info.instance.hw_memtotal_mb == test_vm_hardware.memory_mb - - guest_info.instance.hw_processor_count == test_vm_hardware.num_cpus + - guest_info.guests[0].hw_cluster == deploy_ovf_cluster_name + - guest_info.guests[0].hw_folder == deploy_ovf_folder + - guest_info.guests[0].hw_name == item + - guest_info.guests[0].hw_datastores == [deploy_ovf_datastore] + - guest_info.guests[0].hw_memtotal_mb == test_vm_hardware.memory_mb + - guest_info.guests[0].hw_processor_count == test_vm_hardware.num_cpus - name: Check Power Status Of VM Deployed From Local OVF File ansible.builtin.assert: that: - - guest_info.instance.hw_power_status == vm_power_status - when: item == vm_name_local_ovf \ No newline at end of file + - guest_info.guests[0].hw_power_status == vm_power_status + when: item == vm_name_local_ovf diff --git a/tests/integration/targets/vmware_ops_esxi_maintenance_mode_test/tasks/main.yml b/tests/integration/targets/vmware_ops_esxi_maintenance_mode_test/tasks/main.yml index e2f45a6f..496a8efd 100644 --- a/tests/integration/targets/vmware_ops_esxi_maintenance_mode_test/tasks/main.yml +++ b/tests/integration/targets/vmware_ops_esxi_maintenance_mode_test/tasks/main.yml @@ -31,7 +31,7 @@ name: cloud.vmware_ops.provision_virtual_esxi - name: Wait until ESXi VM is powered off after OS installation - community.vmware.vmware_guest_info: + vmware.vmware.guest_info: hostname: "{{ provision_virtual_esxi_hostname }}" username: "{{ provision_virtual_esxi_username }}" password: "{{ provision_virtual_esxi_password }}" @@ -40,7 +40,7 @@ validate_certs: "{{ provision_virtual_esxi_validate_certs }}" name: "{{ provision_virtual_esxi_vms[0].name }}" register: _esxi_power_status - until: _esxi_power_status.instance.hw_power_status == 'poweredOff' + until: _esxi_power_status.guests[0].hw_power_status == 'poweredOff' retries: 30 delay: 20 @@ -51,7 +51,7 @@ provision_vm_state: "poweredon" - name: Wait until ESXi VM has an IP address - community.vmware.vmware_guest_info: + vmware.vmware.guest_info: hostname: "{{ provision_virtual_esxi_hostname }}" username: "{{ provision_virtual_esxi_username }}" password: "{{ provision_virtual_esxi_password }}" @@ -60,13 +60,13 @@ validate_certs: "{{ provision_virtual_esxi_validate_certs }}" name: "{{ provision_virtual_esxi_vms[0].name }}" register: _esxi_host_check - until: _esxi_host_check.instance.ipv4 is defined and _esxi_host_check.instance.ipv4 is not none + until: _esxi_host_check.guests[0].ipv4 is defined and _esxi_host_check.guests[0].ipv4 is not none retries: 30 delay: 10 - name: Check if ESXi is up wait_for: - host: "{{ _esxi_host_check.instance.ipv4 }}" + host: "{{ _esxi_host_check.guests[0].ipv4 }}" port: 22 delay: 10 timeout: 300 @@ -77,18 +77,18 @@ name: cloud.vmware_ops.vcenter_host_connection vars: vcenter_host_connection_state: present - vcenter_host_connection_esxi_hostname: "{{ _esxi_host_check.instance.ipv4 }}" + vcenter_host_connection_esxi_hostname: "{{ _esxi_host_check.guests[0].ipv4 }}" - name: Enable Maintenance Mode ansible.builtin.import_role: name: cloud.vmware_ops.esxi_maintenance_mode vars: - esxi_maintenance_mode_esxi_hostname: "{{ _esxi_host_check.instance.ipv4 }}" + esxi_maintenance_mode_esxi_hostname: "{{ _esxi_host_check.guests[0].ipv4 }}" esxi_maintenance_mode_enable: True - name: Gather ESXI host facts after enabling maintenance mode community.vmware.vmware_host_facts: - hostname: "{{ _esxi_host_check.instance.ipv4 }}" + hostname: "{{ _esxi_host_check.guests[0].ipv4 }}" username: "{{ vcenter_host_connection_esxi_username }}" password: "{{ vcenter_host_connection_esxi_password }}" validate_certs: "{{ esxi_maintenance_mode_validate_certs }}" @@ -105,12 +105,12 @@ ansible.builtin.import_role: name: cloud.vmware_ops.esxi_maintenance_mode vars: - esxi_maintenance_mode_esxi_hostname: "{{ _esxi_host_check.instance.ipv4 }}" + esxi_maintenance_mode_esxi_hostname: "{{ _esxi_host_check.guests[0].ipv4 }}" esxi_maintenance_mode_enable: False - name: Gather ESXI host facts after disabling maintenance mode community.vmware.vmware_host_facts: - hostname: "{{ _esxi_host_check.instance.ipv4 }}" + hostname: "{{ _esxi_host_check.guests[0].ipv4 }}" username: "{{ vcenter_host_connection_esxi_username }}" password: "{{ vcenter_host_connection_esxi_password }}" validate_certs: "{{ esxi_maintenance_mode_validate_certs }}" @@ -132,7 +132,7 @@ datacenter: "{{ vcenter_host_connection_datacenter }}" cluster: "{{ vcenter_host_connection_cluster }}" validate_certs: "{{ vcenter_host_connection_validate_certs }}" - esxi_hostname: "{{ _esxi_host_check.instance.ipv4 | default('') }}" + esxi_hostname: "{{ _esxi_host_check.guests[0].ipv4 | default('') }}" esxi_username: "{{ vcenter_host_connection_esxi_username }}" esxi_password: "{{ vcenter_host_connection_esxi_password }}" state: absent @@ -151,4 +151,4 @@ - name: Run task for removing resource pool ansible.builtin.include_tasks: add_or_remove_resource_pool.yml vars: - state: absent \ No newline at end of file + state: absent diff --git a/tests/integration/targets/vmware_ops_provision_virtual_esxi_test/tasks/cleanup_esxi.yml b/tests/integration/targets/vmware_ops_provision_virtual_esxi_test/tasks/cleanup_esxi.yml index 11ffb337..78db3b10 100644 --- a/tests/integration/targets/vmware_ops_provision_virtual_esxi_test/tasks/cleanup_esxi.yml +++ b/tests/integration/targets/vmware_ops_provision_virtual_esxi_test/tasks/cleanup_esxi.yml @@ -29,7 +29,7 @@ provision_vm_force: true - name: Check if ESXi VM is down - command: ping -c 1 -W 5 {{ esxi_host.instance.ipv4 }} + command: ping -c 1 -W 5 {{ esxi_host.guests[0].ipv4 }} register: ping_check_result ignore_errors: true @@ -38,7 +38,7 @@ ping_not_available: "{{ ping_check_result.rc != 0 }}" - name: Verify VM absence in vCenter - community.vmware.vmware_guest_info: + vmware.vmware.guest_info: hostname: "{{ vcenter_hostname }}" username: "{{ vcenter_username }}" password: "{{ vcenter_password }}" diff --git a/tests/integration/targets/vmware_ops_provision_virtual_esxi_test/tasks/main.yml b/tests/integration/targets/vmware_ops_provision_virtual_esxi_test/tasks/main.yml index e5113a48..aeb1b91f 100644 --- a/tests/integration/targets/vmware_ops_provision_virtual_esxi_test/tasks/main.yml +++ b/tests/integration/targets/vmware_ops_provision_virtual_esxi_test/tasks/main.yml @@ -7,80 +7,80 @@ - name: Test Virtual Esxi Provisioning on vCenter Env when: not run_on_simulator block: - - name: Import common vars - ansible.builtin.include_vars: - file: ../group_vars.yml + - name: Import common vars + ansible.builtin.include_vars: + file: ../group_vars.yml - - name: Add Resource Pool - community.vmware.vmware_resource_pool: - hostname: "{{ provision_virtual_esxi_hostname }}" - username: "{{ provision_virtual_esxi_username }}" - password: "{{ provision_virtual_esxi_password }}" - datacenter: "{{ provision_virtual_esxi_datacenter }}" - cluster: "{{ provision_virtual_esxi_cluster }}" - validate_certs: "{{ provision_virtual_esxi_validate_certs }}" - resource_pool: "{{ resource_pool_name }}" - state: present + - name: Add Resource Pool + community.vmware.vmware_resource_pool: + hostname: "{{ provision_virtual_esxi_hostname }}" + username: "{{ provision_virtual_esxi_username }}" + password: "{{ provision_virtual_esxi_password }}" + datacenter: "{{ provision_virtual_esxi_datacenter }}" + cluster: "{{ provision_virtual_esxi_cluster }}" + validate_certs: "{{ provision_virtual_esxi_validate_certs }}" + resource_pool: "{{ resource_pool_name }}" + state: present - - name: Provision Virtual Esxi - ansible.builtin.import_role: - name: cloud.vmware_ops.provision_virtual_esxi - vars: - provision_virtual_esxi_resource_pool: "{{ resource_pool_name }}" + - name: Provision Virtual Esxi + ansible.builtin.import_role: + name: cloud.vmware_ops.provision_virtual_esxi + vars: + provision_virtual_esxi_resource_pool: "{{ resource_pool_name }}" - - name: Wait until ESXi VM is powered off after OS installation - community.vmware.vmware_guest_info: - hostname: "{{ provision_virtual_esxi_hostname }}" - username: "{{ provision_virtual_esxi_username }}" - password: "{{ provision_virtual_esxi_password }}" - port: "{{ provision_virtual_esxi_port }}" - datacenter: "{{ provision_virtual_esxi_datacenter }}" - validate_certs: "{{ provision_virtual_esxi_validate_certs }}" - name: "{{ provision_virtual_esxi_vms[0].name }}" - register: _esxi_power_status - until: _esxi_power_status.instance.hw_power_status == 'poweredOff' - retries: 30 - delay: 20 + - name: Wait until ESXi VM is powered off after OS installation + vmware.vmware.guest_info: + hostname: "{{ provision_virtual_esxi_hostname }}" + username: "{{ provision_virtual_esxi_username }}" + password: "{{ provision_virtual_esxi_password }}" + port: "{{ provision_virtual_esxi_port }}" + datacenter: "{{ provision_virtual_esxi_datacenter }}" + validate_certs: "{{ provision_virtual_esxi_validate_certs }}" + name: "{{ provision_virtual_esxi_vms[0].name }}" + register: _esxi_power_status + until: _esxi_power_status.guests[0].hw_power_status == 'poweredOff' + retries: 30 + delay: 20 - - name: Power on ESXi VM if it is off - ansible.builtin.import_role: - name: cloud.vmware_ops.provision_vm - vars: - provision_vm_hostname: "{{ provision_virtual_esxi_hostname }}" - provision_vm_username: "{{ provision_virtual_esxi_username }}" - provision_vm_password: "{{ provision_virtual_esxi_password }}" - provision_vm_validate_certs: "{{ provision_virtual_esxi_validate_certs }}" - provision_vm_port: "{{ provision_virtual_esxi_port }}" - provision_vm_cluster: "{{ provision_virtual_esxi_cluster }}" - provision_vm_datacenter: "{{ provision_virtual_esxi_datacenter }}" - provision_vm_name: "{{ provision_virtual_esxi_vms[0].name }}" - provision_vm_state: "poweredon" + - name: Power on ESXi VM if it is off + ansible.builtin.import_role: + name: cloud.vmware_ops.provision_vm + vars: + provision_vm_hostname: "{{ provision_virtual_esxi_hostname }}" + provision_vm_username: "{{ provision_virtual_esxi_username }}" + provision_vm_password: "{{ provision_virtual_esxi_password }}" + provision_vm_validate_certs: "{{ provision_virtual_esxi_validate_certs }}" + provision_vm_port: "{{ provision_virtual_esxi_port }}" + provision_vm_cluster: "{{ provision_virtual_esxi_cluster }}" + provision_vm_datacenter: "{{ provision_virtual_esxi_datacenter }}" + provision_vm_name: "{{ provision_virtual_esxi_vms[0].name }}" + provision_vm_state: "poweredon" - - name: Wait until ESXi VM has an IP address - community.vmware.vmware_guest_info: - hostname: "{{ provision_virtual_esxi_hostname }}" - username: "{{ provision_virtual_esxi_username }}" - password: "{{ provision_virtual_esxi_password }}" - port: "{{ provision_virtual_esxi_port }}" - datacenter: "{{ provision_virtual_esxi_datacenter }}" - validate_certs: "{{ provision_virtual_esxi_validate_certs }}" - name: "{{ provision_virtual_esxi_vms[0].name }}" - register: _esxi_host_check - until: _esxi_host_check.instance.ipv4 is defined and _esxi_host_check.instance.ipv4 is not none - retries: 30 - delay: 10 + - name: Wait until ESXi VM has an IP address + vmware.vmware.guest_info: + hostname: "{{ provision_virtual_esxi_hostname }}" + username: "{{ provision_virtual_esxi_username }}" + password: "{{ provision_virtual_esxi_password }}" + port: "{{ provision_virtual_esxi_port }}" + datacenter: "{{ provision_virtual_esxi_datacenter }}" + validate_certs: "{{ provision_virtual_esxi_validate_certs }}" + name: "{{ provision_virtual_esxi_vms[0].name }}" + register: _esxi_host_check + until: _esxi_host_check.guests[0].ipv4 is defined and _esxi_host_check.guests[0].ipv4 is not none + retries: 30 + delay: 10 - - name: Set fact for esxi instance - set_fact: - esxi_host: "{{ _esxi_host_check }}" + - name: Set fact for esxi instance + set_fact: + esxi_host: "{{ _esxi_host_check }}" - - name: Check if VM is up - wait_for: - host: "{{ esxi_host.instance.ipv4 }}" - port: 22 - delay: 10 - timeout: 300 - state: started + - name: Check if VM is up + wait_for: + host: "{{ esxi_host.guests[0].ipv4 }}" + port: 22 + delay: 10 + timeout: 300 + state: started always: - name: "Call cleanup playbook" diff --git a/tests/integration/targets/vmware_ops_vcenter_host_connection_test/tasks/provision_esxi.yml b/tests/integration/targets/vmware_ops_vcenter_host_connection_test/tasks/provision_esxi.yml index 1e6809e6..7fc02084 100644 --- a/tests/integration/targets/vmware_ops_vcenter_host_connection_test/tasks/provision_esxi.yml +++ b/tests/integration/targets/vmware_ops_vcenter_host_connection_test/tasks/provision_esxi.yml @@ -4,7 +4,7 @@ name: cloud.vmware_ops.provision_virtual_esxi - name: Wait until ESXI VM is powered off after OS installation - community.vmware.vmware_guest_info: + vmware.vmware.guest_info: hostname: "{{ provision_virtual_esxi_hostname }}" username: "{{ provision_virtual_esxi_username }}" password: "{{ provision_virtual_esxi_password }}" @@ -12,7 +12,7 @@ validate_certs: "{{ provision_virtual_esxi_validate_certs }}" name: "{{ provision_virtual_esxi_vms[0].name }}" register: _esxi_power_status - until: _esxi_power_status.instance.hw_power_status == 'poweredOff' + until: _esxi_power_status.guests[0].hw_power_status == 'poweredOff' retries: 30 delay: 20 @@ -23,7 +23,7 @@ provision_vm_state: poweredon - name: Wait until ESXI VM has an IP address - community.vmware.vmware_guest_info: + vmware.vmware.guest_info: hostname: "{{ provision_virtual_esxi_hostname }}" username: "{{ provision_virtual_esxi_username }}" password: "{{ provision_virtual_esxi_password }}" @@ -31,13 +31,13 @@ validate_certs: "{{ provision_virtual_esxi_validate_certs }}" name: "{{ provision_virtual_esxi_vms[0].name }}" register: esxi_host_info - until: esxi_host_info.instance.ipv4 is defined and esxi_host_info.instance.ipv4 is not none + until: esxi_host_info.guests[0].ipv4 is defined and esxi_host_info.guests[0].ipv4 is not none retries: 30 delay: 10 - name: Check if ESXI is up wait_for: - host: "{{ esxi_host_info.instance.ipv4 }}" + host: "{{ esxi_host_info.guests[0].ipv4 }}" port: 22 delay: 10 timeout: 300 @@ -45,4 +45,4 @@ - name: Set ESXI hostname ansible.builtin.set_fact: - vcenter_host_connection_esxi_hostname: "{{ esxi_host_info.instance.ipv4 }}" + vcenter_host_connection_esxi_hostname: "{{ esxi_host_info.guests[0].ipv4 }}"