ITC*_*hap 28 jinja2 salt-stack
使用Jinja2为Saltstack编写模板文件时,我经常在文件的开头定义一些变量.例如:
{% set ip = grains['ip4_interfaces']['eth1'][0] %}
{% set domain = pillar['company_domain'] %}
{% set version = pillar['site_version'] %}
{% set site_url = 'www.' + domain %}
[...]
Run Code Online (Sandbox Code Playgroud)
一切正常,但是当打开生成的文件时,我得到一个空行的块,其中包含jinja代码.
难道我做错了什么 ?如果没有,在使用模板时有没有办法摆脱那些空行?
oeu*_*ete 42
Jinja2中有空白控制.你可能想要:
{%- set ip = grains['ip4_interfaces']['eth1'][0] -%}
{%- set domain = pillar['company_domain'] -%}
{%- set version = pillar['site_version'] -%}
{%- set site_url = 'www.' + domain -%}
[...]
Run Code Online (Sandbox Code Playgroud)
同样,该盐的配置文件支持jinja_trim_blocks和jinja_lstrip_blocks(jinja_env:trim_blocks,jinja_env:lstrip_blocks,jinja_sls_env:trim_blocks,和jinja_sls_env:lstrip_blocks 作为2018.3).