Wie bekomme ich ein Ansible-Vorlage zu Ehren, neue Linien nach einer bedingten
Die Vorlage sieht wie folgt aus:
solr.replication.master=
{% if ansible_eth0.ipv4.address == servermaster.eth0 %}
false
{% else %}
true
{% endif %}
solr.replication.slave=false
Und die Ausgabe sollte wie folgt Aussehen:
solr.replication.master=true
solr.replication.slave=false
Was ich bin eigentlich immer ist:
solr.replication.master=truesolr.replication.slave=false
Ich verstehe, dass Jinja2 Streifen whitespace, und dass ansible ist wahrscheinlich die Konfiguration dieses standardmäßig. Aber es scheint nicht zu Ehren -/+ whitespace-tags.
Gibt es eine Möglichkeit, um einen Zeilenumbruch zu erzwingen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fügen Sie die folgende Zeile zu Ihrer Vorlage an Erster position:
Ich hatte das gleiche Problem. Ich löste es durch hinzufügen
dem Ende der Zeile, zum Beispiel:
Dieser fügt ein leeres string-literal, mit dem Nebeneffekt, dass die Leerzeichen nicht entfernt.
Google brachte mich hier zu verlassen, da ich diese Antwort für Wohlstand Willen.
Als Sie erwähnt
-/+
whitespace-Markierungen werden nicht geehrt, noch sind line-Makros aktiviert (zumindest nicht%%
oder#
oder##
).trim_blocks
aktiviert ist, in ansible. Das einzige, was ich gefunden, die funktioniert, ist, dasstrim_blocks
ignoriert nur den ersten newlineFür dein Beispiel, nur das hinzufügen einer zusätzlichen Zeilenumbruch sollte ausreichend sein
Ich glaube, mit einem
ternary
filter helfen könnten.Als Problemumgehung können Sie hinzufügen, um Ihre Vorlage