templates - 如何获得 Ansible 模板以在条件后支持新行

标签 templates jinja2 ansible

模板如下所示:

solr.replication.master=
    {% if ansible_eth0.ipv4.address == servermaster.eth0 %}
        false
    {% else %}
        true
    {% endif %}

solr.replication.slave=false

输出应如下所示:

solr.replication.master=true
solr.replication.slave=false

我实际得到的是:

solr.replication.master=truesolr.replication.slave=false

据我了解,Jinja2 会去除空格,并且 ansible 可能会默认配置此功能。但它似乎不支持 -/+ 空白标签。

有没有办法强制换行?

最佳答案

将以下行添加到模板的第一个位置:

#jinja2: trim_blocks:False

关于templates - 如何获得 Ansible 模板以在条件后支持新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22350175/

相关文章:

c++ - 具有 lambda 的多态访问者

c++ - 使用 C++ 模板的数据映射器设计模式

c++ - vector 模板- 'no match for call' 错误

ansible - 无法将属性与数字进行比较。错误 : "not supported between instances of ' AnsibleUnsafeText' and 'int' "

任务中的ansible undefined variable

Ansible Playbook 是否需要指定要通过 dist-upgrade 设置的包的确切版本?

python - libselinux-python 绑定(bind)和 ansible

c++ - std::rel_ops 功能作为基类。那是合适的解决方案吗?

python - 在用户提交的内容中呈现换行符(Python 网络应用程序)

python - 使用布局将 Jinja2 模板渲染为字符串