2017-06-19 7 views
-1

Ich schreibe eine ansible Playbook-Netzwerk konfigurieren Teaming und ich habe folgendes jinja2 Template-Datei in meinem Textbuch:ansible entkommen eine seccession von geschweiften Klammern

DEVICE=team0 
DEVICETYPE=Team 
ONBOOT=yes 
BOOTPROTO=none 
IPADDR="{{ ip }}" 
PREFIX="{{ prefix }}" 
GATEWAY="{{ gateway }}" 
TEAM_CONFIG='{"runner": {"name": "loadbalance"}, "tx_hash": ["eth", "ipv4"], "ports": {{{ ports_list | join(', ') }}}, "link_watch": {"name": "ethtool"}}' 

I ist eine es eine Möglichkeit wissen wollte entkomme die erste geschweifte Klammer von "Ports": {{{ports_list | join ('')}} wie ich ansible es automatisch berechnet werden soll die folgende Ausgabe in der letzten jinja2 Datei haben:

"ports": {"ens1": {}, "ens2": {}} 

N. B: Ich habe bereits versucht, {{ports_list | to_json}} und {{ports_list | beitreten (',') | to_json}}

+0

Ich sehe keine Programmierung hier, also werde ich auf einer Gliedmaße gehen und sagen Notepad ++, Suche "{{{" ersetzen durch "{" 0 " – Kilazur

Antwort

0

Scheint, wie Sie für to_json Filter suchen:

"ports": {{ ports_list | to_json }} 

Ich denke, man kann es auf ganze Config Objekt anwenden möchten.

+0

Ich benutze es, änderte ich den ursprünglichen Beitrag, um die Jinja2 Linie. –

+0

Ich sehe dort keine Erwähnung von 'to_json'. –

+0

Leider habe ich die Zeile ohne "to_json" eingefügt, aber ich habe die gleichen Ergebnisse. –

Verwandte Themen