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 [email protected] wrote:
> On Tue, 12 Jul 2022 02:18:57 -0700 (PDT)
> Softmax23 <[email protected]> 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 [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/a38eebfa-d815-45fb-a2f3-0c57529bac66n%40googlegroups.com.