I am in the process of migrating to Ansible roles model and I have the following structure -
../roles/vms/tasks/main.yml
---
# To Create VMs on the VMware vCenter Server
- name: Creation of Windows 8.1 VMs
vsphere_guest:
vcenter_hostname: "name"
guest: "{{ item }}"
from_template: yes
template_src: "templatename"
validate_certs: no
esxi:
datacenter: dc
hostname: hname
with_items: "{{ vmname81 }}"
../roles/vms/vars/main.yml
---
vmname81:
- Client1
- Client2
- Client3
vmname10:
- Client4
- Client5
playbook.yml
---
# To Create VMs on the VMware vCenter Server
- hosts: localhost
name: Creation of Windows 8.1 VMs
roles:
- { role: vms }
As you can see in the playbook, I am trying to create Windows 8.1 VMs but I am unable to figure out how to pass the vmname81 in the roles for the creation of 8.1 VMs. The inputs provided here needs to be used by with_items in the /tasks/main.yml so that I three Windows 8.1 VMs are created. I am also interested to know if this can be done in a better way.