例如,您的角色中有一个列表变量...
myitems:
- one
- two
...并且想要修改 Ansible 中的每个项目(例如在之前/之后附加一个字符串),您可以...
最佳答案
...通过在角色的 vars/main.yml
中创建以下两个变量来实现这一点。文件(或在可以定义 vars 的所有其他地方):
interim_string: "{% for item in myitems %}with-{{item}}X {% endfor %}"
result_list: "{{ interim_string.split() }}"
由此产生的
result_list
现在包含以下值:- with-oneX
- with-twoX
在
x
之后提及空格定义时 interim_string
.用于分割interim_string
再次进入列表。您可以按另一个字符或序列拆分(例如 split('#')
)。但是,这将导致 result_list
末尾的列表项为空。 .
关于jinja2 - 修改 Ansible/Jinja2 中的列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35142326/