Under an ip I want a variable ccode which will be global variable for that ip.
I also want variable name & path which will have multiple entries. How can I read both single global and multiple variables name and path under a given IP ? On Tue, 3 Mar, 2020, 1:26 pm Dick Visser, <[email protected]> wrote: > Can you tell what is the big picture? What task is this intended for? > > On Tue, 3 Mar 2020 at 05:43, Shifa Shaikh <[email protected]> wrote: > >> Below is my playbook which loads variables and passes it to ls command on >> remote hosts. >> >> - name: Load repository >> include_vars: >> file="{{ playbook_dir }}/vars/listing.yml" >> name=user1 >> >> >> - set_fact: >> allinonecmd: "{{ allinonecmd | default('') + 'ls -ltr ' + >> item.path + ' '}}" >> loop: "{{ user1[inventory_hostname] }}" >> >> - name: Get stat >> shell: "ssh {{ USER }}@{{ inventory_hostname }} '{{ allinonecmd }}' >> >/web/htdocs/{{ item.ccode }}{{ item.ipseg }}.html" >> delegate_to: localhost >> loop: "{{ user1[inventory_hostname] }}" >> >> >> below is my listing.yml >> 10.0.0.15: >> - name: SCRIPT >> path: /tmp/scripts >> ccode: GRM-APP- >> ipseg: "0.15" >> - name: MOC >> path: /tmp/moc >> - name: EXE >> path: /tmp/exe >> - name: MTR >> path: /tmp/mtr >> >> >> This worked fine without ccode and ipseg entries in the listing.yml. I >> have multiple entries for path which i loop over and construct the >> allinonecmd string but the ccode is just needed once. >> >> I get this error with a single entry of ccode in listing.yml >> >> fatal: [10.0.0.15]: FAILED! => { >> "msg": "The task includes an option with an undefined variable. The >> error was: 'dict object' has no attribute 'ccode' >> >> >> For my existing playbook to work i have to specify ccode and ipseg under >> each entry like below which works but looks ugly. It should be specified >> just one time and the playbook should work. >> >> 10.0.0.15: >> - name: SCRIPT >> path: /tmp/scripts >> ccode: GRM-APP- >> ipseg: "0.15" >> - name: MOC >> path: /tmp/moc >> ccode: GRM-APP- >> ipseg: "0.15" >> - name: EXE >> path: /tmp/exe >> ccode: GRM-APP- >> ipseg: "0.15" >> - name: MTR >> path: /tmp/mtr >> ccode: GRM-APP- >> ipseg: "0.15" >> >> >> Can you please suggest a clean way to get this to work ? >> >> -- >> 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 view this discussion on the web visit >> https://groups.google.com/d/msgid/ansible-project/2d8d2651-2ffc-4f36-b565-0df941508cbb%40googlegroups.com >> <https://groups.google.com/d/msgid/ansible-project/2d8d2651-2ffc-4f36-b565-0df941508cbb%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- > Sent from a mobile device - please excuse the brevity, spelling and > punctuation. > > -- > 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 view this discussion on the web visit > https://groups.google.com/d/msgid/ansible-project/CAL8fbwPTUGXsFP0HV6pUvUJB_ssvOq_-V-8P9JALJ3urWMq46g%40mail.gmail.com > <https://groups.google.com/d/msgid/ansible-project/CAL8fbwPTUGXsFP0HV6pUvUJB_ssvOq_-V-8P9JALJ3urWMq46g%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- 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 view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/CAJtox0kJy%3D1Cow5XFC10CSUwvF6Jfdn34Xm5sAnnNjDLh%2B5mgw%40mail.gmail.com.
