我有一个任务,它使用with_subelements
但对于大列表来说非常慢(尤其是大多数元素都有重复,我不需要为它们多次运行它)。
所以我正在寻找一种以某种方式优化它的方法。我希望从该列表中获取所有唯一元素 -settings
在下面的示例中说:
存货:
my_list:
- { name: foo, settings: ['x', 'y', 'z'] }
- { name: bar, settings: ['x', 'y', 'q', 'w'] }
Run Code Online (Sandbox Code Playgroud)
任务:
- name: get all settings
set_fact:
all_settings="{{ my_list|map(attribute='settings')|list }}"
- name: show results
debug:
var=all_settings
Run Code Online (Sandbox Code Playgroud)
结果:
"var": {
"all_settings": [
[
"x",
"y",
"z"
],
[
"x",
"y",
"q"
"w"
]
]
}
Run Code Online (Sandbox Code Playgroud)
我卡在了这一点上。如何将这些列表组合在一起?
我正在寻找获得 ['x', 'y', 'z', 'q', 'w']
您需要使用一个union
.
在我的头顶:
all_settings="{{ foo|map(attribute='settings')|union(bar|map(attribute='settings')) }}"
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
19693 次 |
最近记录: |