jinja2空格控制

jinja2空格控制

Content #

ens3:
    dhcp4: true
    match:
        macaddress: "{{ hostvars[inventory_hostname]['ansible_default_ipv4']['macaddress'] }}"
    mtu: 1500
    set-name: ens3
    routing-policy:
        {% for server in servers -%}
        - from: {{ server.ipv4 }}
            table: table_{{ server.ipv4.split('.')[-1]}}
        {% endfor %}

    routes:
        {% for server in servers -%}
        - to: default
            via: {{ tun1_gateway }}
            dev: tun1
            table: table_{{ server.ipv4.split('.')[-1]}}
        {% endfor %}

模板的缩进位置会影响到生成的文本的缩进。使用"-%}“会移除右大括号后所有的空白字符。同样,”{%-“则会移除左大括号之前的空白字符。 endfor的右侧若使用减号,则会导致后续行的缩进出错。

From #

jinja2文档中查阅 Template Designer Documentation.