Hi Matti, You've created a dictionary instead of a list. Check this document: http://docs.ansible.com/ansible/YAMLSyntax.html
The proper use of "with_items" needs a list like this: vmware_guest_disks: - size_gb: 20 datastore: datastore1 - size_gb: 1 datastore: datastore1 - size_gb: 2 datastore: datastore1 Note the dash and space per item. The indentation is important, too. Then you should access the items this way: {{ item.size_gb }} and {{ item.datastore }}. No "value" part. Cheers, Marko ________________________________ From: ansible-project@googlegroups.com <ansible-project@googlegroups.com> on behalf of Matti Rantakömi <ran...@gmail.com> Sent: Monday, January 30, 2017 11:48 To: Ansible Project Subject: [ansible-project] How to use with_items loop with vmware_guest module Hello, I'm trying to create new VM using vmware_guest module with multiple disks which details are defined in host_vars file. Unfortunately I can't get it working. Is it even possible to use with_items with vmware_guest module? I have tried the following: Disk definition in host_vars: vmware_guest_disks: disk1: size_gb: 20 datastore: datastore1 disk2: size_gb: 1 datastore: datastore1 disk3: size_gb: 2 datastore: datastore1 Task used to try to create new VM: - name: Create new VM vmware_guest: hostname: 192.168.1.2 username: administrator@vsphere.local password: password datacenter: datacenter cluster: cluster name: guestname guest_id: centos64guest template: templatename validate_certs: no hardware: memory_mb: 1024 num_cpus: 1 customization: dns_servers: - 8.8.8.8 - 8.8.4.4 hostname: guesthostname domain: guestdomain password: password networks: - vlan: 1 ip: 192.168.1.100 netmask: 255.255.255.0 gateway: 192.186.1.1 disk: - size_gb: "{{ item.value.size_gb }}" - datastore: "{{ item.value.datastore }}" with_items: "{{ vmware_guest_disks | default({}) }}" register: deploy Tasks fails but if it had succeeded as I though it should have created new VM with disks which details have been taken from host_vars (disks with sizes 20, 1 and 2 GB placed on datastore1). -- You received this message because you are subscribed to the Google Groups "Ansible Project" group. To unsubscribe from this group and stop receiving emails from it, send an email to ansible-project+unsubscr...@googlegroups.com<mailto:ansible-project+unsubscr...@googlegroups.com>. To post to this group, send email to ansible-project@googlegroups.com<mailto:ansible-project@googlegroups.com>. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/2ce90552-5058-4a8c-9bf7-691046e22d0a%40googlegroups.com<https://groups.google.com/d/msgid/ansible-project/2ce90552-5058-4a8c-9bf7-691046e22d0a%40googlegroups.com?utm_medium=email&utm_source=footer>. For more options, visit https://groups.google.com/d/optout. ______________________________________________________________________________________________________ CONFIDENTIALITY NOTICE: This message is the property of International Game Technology PLC and/or its subsidiaries and may contain proprietary, confidential or trade secret information. This message is intended solely for the use of the addressee. If you are not the intended recipient and have received this message in error, please delete this message from your system. Any unauthorized reading, distribution, copying, or other use of this message or its attachments is strictly prohibited. -- You received this message because you are subscribed to the Google Groups "Ansible Project" group. To unsubscribe from this group and stop receiving emails from it, send an email to ansible-project+unsubscr...@googlegroups.com. To post to this group, send email to ansible-project@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/1485871585064.75828%40IGT.com. For more options, visit https://groups.google.com/d/optout.