我需要在使用Ansible编写的代码中转义两个大括号。 问题是我拥有所有需要转换为变量的参数。基本上我正在研究模板创建者。
我尝试使用{%raw%} {{变量名}} {%endraw%},但没有成功。当我尝试/ {/ {name-of-variable}}时,我几乎明白了,但我也想摆脱反斜杠。
下面是一些代码:
local_action:
module: replace
path: "/tmp/{{ ambiance }}/{{ seed }}DEFAULT.j2"
regexp: "{{ item.regexp1 }}"
replace: "{{ item.replace }}"
with_items:
- { regexp1: '^DBHOST.*$', replace: 'DBHOST = {% raw %}{{ databasehost }}{% endraw %}' }
- { regexp1: '^GLOBALHOST.*$', replace: 'GLOBALHOST = {% raw %}{{ global_hostname }}{% endraw %}' }
我期望结果如下:
DBHOST = {{ satabasehost }}
GLOBALHOST = {{ global_hostname }}
有什么建议/想法吗?
答案 0 :(得分:1)
{% raw %}{{ databasehost }}{% endraw %}
应该可以工作。
您也可以使用{{ '{{ databasehost }}' }}
作为替代。