I think there's an typo here. There's an extra 't' in list_of_servers: "{{
tarr|flatten }}" should be
list_of_servers: "{{ arr|flatten }}"

On Tue, Jul 12, 2022, 14:24 Softmax23 <maximefouach...@gmail.com> wrote:

> When i do
>       arr: "{{ servers|dict2items|
>                       groupby('value')|
>                       map(attribute=1)|
>                       map('map', attribute='key')|
>                       list }}"
>       list_of_servers: "{{ tarr|flatten }}"
>   tasks:
>     - debug:
>         var: arr
>
> the result , no data.
>
> TASK [debug]
> ******************************************************************************************************************************
> ok: [localhost] => {
>     "arr": "[<generator object do_map at 0x7f1c51cac4a0>, <generator
> object do_map at 0x7f1c51cac9e0>,
>  <generator object do_map at 0x7f1c51caca50>]"
> }
>
>
>
> 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/a38eebfa-d815-45fb-a2f3-0c57529bac66n%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/a38eebfa-d815-45fb-a2f3-0c57529bac66n%40googlegroups.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 ansible-project+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CAFtje5Mi%2Bob5QL1Hf8jod3ebM5jtNfLnM9q9kwbLRCJRgggRuA%40mail.gmail.com.

Reply via email to