Prefered way to launch a vm on vmware

Hello,
I’m new to ansible and tried to launch a Linux VM on my first Ansible tests.
This means cloning a vm from a template, booting and running some first-boot commands in order to hand over controll to Puppet inside the vm.

So i ended up with:

  1. vmware_guest to clone.
  2. vmware_tools_wait to ensure OS is up and ready
  3. vmware_vm_shell for to launch Puppet. This is the only way - Network access not an option by policy.

Works out of the box basicallly, but there seems to be a timing problem in step 2.
Since the wm is rebooted in step 1 vmware_tools_wait fails in the first place with someting like “unable to contact vm”.

Ist my aproach correct and is there a way to get arround the timing problem other than a stupid “sleep” between ? Didnt find a retry option sadly.

Thanks for reading

Hey Michael,

Might be worth looking at the wait_for_connection module, I use this with my vmware deployments and it seems to work pretty good.

https://docs.ansible.com/ansible/latest/modules/wait_for_connection_module.html

Luke

Thanks Luke, but this requires networking again which i cant ensure due to topology and some wired policies.