2017-02-01 3 views
1

У меня есть следующий цикл в шаблоне:анзибль: получить список хостов в разделенных запятыми значения

{% 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

Быстрое исправление для шаблона jinja2:

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

Результат что Я получаю отсюда это wsrep_cluster_address = gcomm: // 1,0,., 0,., 0,., 1,9,0 1,., 0,., 0,., 1,1,7 1 , 0 ,. , 0,., 0., 1,5,1 не совсем то, что мне нужно – zozo6015

+0

В цикле это то, что я получаю: '10.0.0.190 10.0.0.117 10.0.0.151' – zozo6015

+1

@ zozo6015 Я добавил исправление к вашему шаблон. Это все еще можно сделать со списком фильтров и карт, но это чище, имхо. – techraf

Смежные вопросы