我正在尝试使用loop / with_item动态构建列表:
- name: processes
package: ""
set_fact:
plugin_options: "{{ CollectFileDescriptor true | CollectContextSwitch true | <ProcessMatch '{{ item.name }}' > | CollectFileDescriptor false | CollectContextSwitch true | </ProcessMatch>}}"
loop:
- { name: proc1 }
- { name: proc2 }
所以最后我应该拥有plugin_options:
CollectFileDescriptor true
CollectContextSwitch true
<ProcessMatch proc1 >
CollectFileDescriptor false
CollectContextSwitch true
</ProcessMatch>
CollectFileDescriptor true
CollectContextSwitch true
<ProcessMatch proc2 >
CollectFileDescriptor false
CollectContextSwitch true
</ProcessMatch>
显然我做错了。有什么提示吗?
答案 0 :(得分:0)
您为什么认为jinja2管道适合构造XML元素?
- set_fact:
plugin_options: >-
{% for item in ["proc1", "proc2"] %}
CollectFileDescriptor true
CollectContextSwitch true
<ProcessMatch {{item}} >
CollectFileDescriptor false
CollectContextSwitch true
</ProcessMatch>
{% endfor %}