it s not working for me : fatal: [localhost]: FAILED! => {"msg": "Invalid data passed to 'loop', it requires a list, got this instead: <generator object do_map at 0x7fe97cca3900>, <generator object do_map at 0x7fe97cca39e0>, <generator object do_map at 0x7fe97cca3a50>]. Hint: If you passed a list/dict of just one element, try adding wantlist=True to your lookup invocation or use q/query instead of lookup."}
a co worker try too .. .same result. i think i will go in BASH... i am sure it will work . ahahah On Tuesday, July 12, 2022 at 11:59:52 AM UTC+2 vbo...@gmail.com wrote: > On Tue, 12 Jul 2022 02:18:57 -0700 (PDT) > Softmax23 <maximef...@gmail.com> wrote: > > For example, the playbook below > > shell> cat pb.yml > - hosts: localhost > vars: > servers: > srv01: a > srv02: a > srv03: a > srv04: b > srv05: b > srv06: b > srv07: c > srv08: c > srv09: c > arr: "{{ servers|dict2items| > groupby('value')| > map(attribute=1)| > map('map', attribute='key')| > list }}" > list_of_servers: "{{ tarr|flatten }}" > tasks: > - set_fact: > tarr: "{{ tarr|d(arr.0)|zip(item)|map('flatten') }}" > loop: "{{ arr[1:] }}" > - debug: > var: list_of_servers[:5]|to_yaml > > 1) Creates the matrix > > arr: > - [srv01, srv02, srv03] > - [srv04, srv05, srv06] > - [srv07, srv08, srv09] > > 2) Transpose the matrix > > tarr: > - [srv01, srv04, srv07] > - [srv02, srv05, srv08] > - [srv03, srv06, srv09] > > 3) Get the slice > > list_of_servers[:5]: [srv01, srv04, srv07, srv02, srv05] > > -- > Vladimir Botka > -- 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 view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/893d2802-3073-4068-9dd7-198a40dc6f39n%40googlegroups.com.