Ansible嵌套变量

时间:2017-03-03 06:56:58

标签: filter ansible jinja2

我有一个这样的变量:

unicast_ip_group: "{{ groups['elasticsearch-demo'] | map('extract', hostvars, ['ansible_host']) | join(':9300,') }}:9300"

我想将静态值elasticsearch-demo设为变量。我试过这个,但Ansible不支持这个:

unicast_ip_group: "{{ groups['{{ my_variable }}'] | map('extract', hostvars, ['ansible_host']) | join(':9300,') }}:9300"

1 个答案:

答案 0 :(得分:3)

以下内容应该有效:

unicast_ip_group: "{{ groups[my_variable] | map('extract', hostvars, ['ansible_host']) | join(':9300,') }}:9300"

您已经使用{{打开了Jinja2表达式,因此您只需引用其名称即可使用变量。