How do I get an Ansible template to honor new lines after a conditional

Oliver Lorton picture Oliver Lorton · Mar 12, 2014 · Viewed 16.9k times · Source

The template looks like this:

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

solr.replication.slave=false

And the output should look like this:

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

What I am actually getting is:

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

I understand that Jinja2 strips whitespace, and that ansible is probably configuring this by default. But it does not seem to honor -/+ whitespace tags.

Is there a way to force a line break?

Answer

Acti67 picture Acti67 · Aug 29, 2016

Add the following line to your template at first position:

#jinja2: trim_blocks:False