我正在使用 ansible 来模板化jinja2文件。
IP:{{ ansible_eth0.ipv4.address }}
IP:{{ ansible_docker0.ipv4.address }}
IP:{{ ansible_{{ ka_interface }}.ipv4.address }}
网络适配器有一个名为ka_interface的var。
但是你会在第3版中得到错误
(IP:{{ ansible_{{ ka_interface }}.ipv4.address }} )
似乎jinja2模板中的var可以嵌套。
答案 0 :(得分:4)
使用Jinja2语法构造动态变量是不可能的。
但是,您可以通过内置list
哈希对象访问任何播放限制变量:
vars
修改:修正哈希语法
答案 1 :(得分:1)
按照Chris Lam的建议,
有用
- name: test
shell: echo {{ vars['ansible_' + ka_interface]['ipv4']['address'] }}
tags: test