Ansible / Jinja:带有未定义语句的条件

时间:2016-05-02 18:29:03

标签: ansible jinja2

我需要遍历所有主机并为未包含在组buildingId中的主机生成配置文件:

somegroup

但如果某个组不存在,则会失败(类型' StrictUndefined'的参数不可迭代)。

如何正确编写以避免两个不同的循环:

{% for host in groups.all if host not in groups['somegroup'] %}

1 个答案:

答案 0 :(得分:2)

我认为您正在寻找default过滤器:

{% for host in groups.all if host not in groups['somegroup'] | default([]) %}