On 08. juli 2017 23:52, Anfield wrote:
Trying to get a playbook working with yml file containing 2 lists and
passing that into the main file to loop over.

Can someone help with letting me know what I'm doing wrong? Thanks
copylist.yml
---
copylist:
     src:
       - /home/ansible/tom/tom.txt
       - /home/ansible/fred/fred.txt
     dest:
       - /home/ansible/tom1
       - /home/ansible/fred1

This is not a list its a dictionary.


Playbook - copy.yml
---
- hosts: localhost
   become: yes
   vars:
     users:
       - tom
       - fred
   vars_files:
       - copylist.yml
   tasks:
     - name: Create users from vars
       user:
         name: "{{item}}"
         state: present
       with_items: "{{users}}"


     - name: Copy files into target directories
       copy:
         src: "{{item.src}}"
         dest: "{{item.dest}}"
       with_items: "{{copylist}}"
Since copylist is not a list but a dictionary this fails.

You need to write copylist as list you like this and you task will work.

copylist:
  - src: /home/ansible/tom/tom.txt
    dest: /home/ansible/tom1
  - src: /home/ansible/fred/fred.txt
    dest: /home/ansible/fred1


--
Kai Stian Olstad

--
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 [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/e0f2f6a6-daff-7488-74c5-3fd823e5db38%40olstad.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to