Ansible:以逗号分隔值获取主机列表

时间:2017-02-01 02:39:13

标签: ansible jinja2

我在模板中有以下循环:

{% for host in groups['dbnodes'] %}
 {{ hostvars[host]['ansible_eth0']['ipv4']['address'] }}
{% endfor %}
问题是它在ip列表中给出输出,我需要用逗号分隔值。知道如何实现这个目标吗?

答案我看起来像这样:

10.0.0.190
10.0.0.117
10.0.0.151

但我需要这样:

10.0.0.190,10.0.0.117,10.0.0.151

1 个答案:

答案 0 :(得分:4)

快速修复Jinja2模板:

{% for host in groups['dbnodes'] -%}
 {{ hostvars[host]['ansible_eth0']['ipv4']['address'] }}{% if not loop.last %},{% endif %}
{%- endfor %}