Hmm, would the cartesian lookup help you? https://docs.ansible.com/ansible/latest/plugins/lookup/cartesian.html
On Wednesday, November 14, 2018 at 8:05:32 AM UTC, [email protected] wrote: > > Hi I have seen ur resolutions in this page i. > > I am also having the same issue with nested loops . > my scenario is nothing but th*e matrix multiplication of n*n* > Can some one please suggest how to implement it using ansible loops along > with adding conidition of count ++ and count -- > > On Monday, June 12, 2017 at 6:39:28 PM UTC+5:30, Q wrote: >> >> Guillaume, >> >> I have exactly the same problem with setting up OSD via ADM host and I >> was pulling my hair for 2 days. >> I don't know how to thank you:) >> >> >> On Wednesday, December 11, 2013 at 3:24:37 PM UTC+1, Guillaume Subiron >> wrote: >>> >>> After reading nested.py and realizing it would never do what I wanted, >>> I found a workaround. >>> >>> On each ceph-ODSs : >>> >>> - delegate_to: "{{ ceph-admin }}" >>> shell: echo {{ inventory_hostname }}-{{ item }} >>> with_items: disks >>> >>> >>> >>> Anyway, thank you very much for your help :) >>> >>> >>> Le 13/12/11 14:53, Guillaume Subiron claviotta : >>> > Hum, this is not what I'm looking for, because my action is not >>> > executed on the ceph-OSDs, but on another host (a centralized admin >>> > node). >>> > In this playbook, I'm not doing anything on the ceph-OSDs. >>> > >>> > What I need to do (only on my admin node) is : >>> > >>> > - shell: echo {{ item.0 }}-{{ item.1 }} >>> > with_nested: >>> > - groups['ceph-OSDs'] >>> > - the disks of the current item in the "groups['ceph-OSDs']" loop >>> > >>> > I want it to print (on the admin host) : >>> > >>> > osd0-sdb >>> > osd1-sdb >>> > osd1-sdc >>> > >>> > Do you understand the problem ? I don't see any workaround. This is a >>> > matter of syntax. >>> > >>> > >>> > Le 13/12/11 08:24, Michael DeHaan claviotta : >>> > > I think you probably want this: >>> > > >>> > > - shell: echo {{ item.0 }}-{{item.1 }} >>> > > with_together: >>> > > - groups['ceph-OSDs'] >>> > > - disks >>> > > >>> > > this will print for the first host >>> > > >>> > > osd0-sdb >>> > > osd1-sdb >>> > > >>> > > and for the second host >>> > > >>> > > osd0-sdb >>> > > osd0-sdc >>> > > osd1-sdb >>> > > osd1-sdc >>> > > >>> > > Let me know if that works for you and if I'm missing something we'll >>> figure >>> > > it out. >>> > > >>> > > Thanks! >>> > > >>> > > >>> > > >>> > > >>> > > >>> > > On Wed, Dec 11, 2013 at 8:21 AM, Guillaume Subiron < >>> [email protected]>wrote: >>> > > >>> > > > Le 13/12/11 08:05, Michael DeHaan claviotta : >>> > > > > Before we dive into a technical solution let me understand your >>> use case >>> > > > > and what you are modelling a bit better. >>> > > > > >>> > > > > So groups['ceph-ODSs'] would be all machines in the ceph-ODSs >>> group. >>> > > > >>> > > > That's right. >>> > > > >>> > > > > >>> > > > > I'd probably just define a variable like "disks" on the group, >>> but I'm >>> > > > > unclear why that wouldn't work in your case. >>> > > > > >>> > > > > I could probably understand more if I could see how "disks" >>> differs >>> > > > between >>> > > > > hosts. >>> > > > >>> > > > It's simple, my Ceph OSD (storage nodes) are all différents. Some >>> > > > contains 2 hard drives (sdb, sdc), some contains 10 (sdb, sdc, >>> sdd…). >>> > > > "disks" is a list of hard drives, which is different from one host >>> to >>> > > > another. ex: >>> > > > >>> > > > inventory >>> > > > >>> > > > osd0 >>> > > > osd1 >>> > > > >>> > > > [ceph-OSDs] >>> > > > osd0 >>> > > > osd1 >>> > > > >>> > > > host_vars/osd0 >>> > > > >>> > > > disks: >>> > > > - sdb >>> > > > >>> > > > host_vars/osd1 >>> > > > >>> > > > disks: >>> > > > - sdb >>> > > > - sdc >>> > > > >>> > > > In my nested loop, I need to loop over the Ceph Storage nodes and >>> > > > their hard drive. The hard drive list is an host variable >>> (accessible >>> > > > by hostvars[osd0]['disks'], for instance). >>> > > > >>> > > > With the example above, I want my playbook to do : >>> > > > >>> > > > ceph_deploy osd prepare osd0:sda >>> > > > ceph_deploy osd prepare osd1:sda >>> > > > ceph_deploy osd prepare osd1:sdb >>> > > > >>> > > > > > > On 11 December 2013 09:53, Guillaume Subiron < >>> [email protected]> >>> > > > > > wrote: >>> > > > > > > >>> > > > > > > > Hi, >>> > > > > > > > >>> > > > > > > > I'm trying to do a special kind of nesting loop, using the >>> item of >>> > > > the >>> > > > > > > > first loop in the second loop: >>> > > > > > > > >>> > > > > > > > - name: Prepare OSDs >>> > > > > > > > shell: ceph-deploy osd prepare {{ item[0] }}:{{ item[1] >>> }} >>> > > > > > > > with_nested: >>> > > > > > > > - groups['ceph-ODSs'] >>> > > > > > > > - hostvars[item[0]]['disks'] >>> > > > > > > > >>> > > > > > > > I'm not sure if this is possible, but I can't find any >>> workaround. >>> > > > > > > > >>> > > > >>> > > > -- >>> > > > Guillaume Subiron >>> > > > Mail - [email protected] >>> > > > GPG - C7C4 455C >>> > > > Jabber - [email protected] >>> > > > IRC - maethor@(freenode|geeknode) >>> > > > >>> > > > -- >>> > > > 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]. >>> > > > For more options, visit https://groups.google.com/groups/opt_out. >>> > > > >>> > > >>> > > >>> > > >>> > > -- >>> > > Michael DeHaan <[email protected]> >>> > > CTO, AnsibleWorks, Inc. >>> > > http://www.ansibleworks.com/ >>> > > >>> > > -- >>> > > 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]. >>> > > For more options, visit https://groups.google.com/groups/opt_out. >>> > >>> > -- >>> > Guillaume Subiron >>> > Mail - [email protected] >>> > GPG - C7C4 455C >>> > Jabber - [email protected] >>> > IRC - maethor@(freenode|geeknode) >>> > >>> > -- >>> > 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]. >>> > For more options, visit https://groups.google.com/groups/opt_out. >>> >>> -- >>> Guillaume Subiron >>> Mail - [email protected] >>> GPG - C7C4 455C >>> Jabber - [email protected] >>> IRC - maethor@(freenode|geeknode) >>> >> -- 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/fc6ef1fa-86f2-4d6b-a29c-452bbfa754e4%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
