awesome, it really helped for my requirement. thank you so much Vladimir, Regards, Suresh
On Wed, Apr 8, 2020 at 9:53 PM Vladimir Botka <[email protected]> wrote: > On Wed, 8 Apr 2020 19:55:04 +0530 > Suresh Karpurapu <[email protected]> wrote: > > > ... i would like to display all the entries. > > > > # cat mounts.csv > > host,remote_path,mnt_path > > host1,nfsvol1,mount1 > > host1,nfsvol2,mount2 > > host1,nfsvol3,mount3 > > host2,nfsvol1,mount1 > > host2,nfsvol2,mount2 > > host2,nfsvol3,mount3 > > > > # cat mounts.yml > > --- > > - name: mount the nfsshare in client side > > hosts: localhost > > gather_facts: false > > become: yes > > tasks: > > - name: reading volume info from csv > > read_csv: > > path: "{{ playbook_dir }}/mounts.csv" > > register: sources > > delegate_to: localhost > > - name: Grouping host and volume information > > add_host: > > name: "{{ item.host }}" > > groups: nfsgroup > > var1: "{{ item.remote_path }}" > > var2: "{{ item.mnt_path }}" > > loop: "{{ sources.list }}" > > Use "groupby" filter. For example > https://jinja.palletsprojects.com/en/master/templates/#groupby > > add_host: > name: "{{ item.0 }}" > groups: nfsgroup > var1: "{{ item.1|json_query('[].remote_path') }}" > var2: "{{ item.1|json_query('[].mnt_path') }}" > loop: "{{ sources.list|groupby('host') }}" > > > - name: list volume details > > hosts: nfsgroup > > become: yes > > gather_facts: false > > tasks: > > - debug: > > msg: > > - "{{ inventory_hostname }}" > > - "{{ var1 }}" > > - "{{ var2 }}" > > You should receive lists of "remote_path" and "mnt_path" in var1 and var2 > respectively. > > ok: [host1] => { > "msg": [ > "host1", > [ > "nfsvol1", > "nfsvol2", > "nfsvol3" > ], > [ > "mount1", > "mount2", > "mount3" > ] > ] > } > ok: [host2] => { > "msg": [ > "host2", > [ > "nfsvol1", > "nfsvol2", > "nfsvol3" > ], > [ > "mount1", > "mount2", > "mount3" > ] > ] > } > > HTH, > > -vlado > -- 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/CAHedzh%2BvLkXFdEqyikyXnGSYWSTqopd6rgfhU0r%2BPu16biQsAg%40mail.gmail.com.
