使用groups.all返回清单中所有主机的列表,是否有可能将包含唯一字符串的列表提取到另一个列表中。
当我调试groups.all时,我会得到清单中所有主机的如下列表。
"groups.all": [
"host-1-unique",
"host-2",
"host-3",
"host-4-unique",
"host-5",
"host-6-unique",
"host-7"
],在我的main.yml里
- set_fact:
new_list: []
- set_fact: "{{ new_list }} + [ '{{ item }}' ]"
with_items: groups.all
when: 'unique' in groups.all我得到的结果如下:
{
"skipped": true,
"_ansible_no_log": false,
"skip_reason": "Conditional result was False",
"_ansible_item_result": true,
"item": "groups.all",
"changed": false
}有人知道为什么要跳过这个吗?如何从返回具有唯一字符串的元素列表的列表中提取?
发布于 2017-11-08 06:10:52
您可能想了解Jinja2 过滤器 (内置的和不可用的)。
- set_fact:
new_list: "{{ groups['all'] | select('search','unique') | list }}"https://stackoverflow.com/questions/47172265
复制相似问题