Удалите пустые строки, оставленные определениями переменных Jinja2
При написании файлов шаблонов с использованием Jinja2 для Saltstack, я часто определяю некоторые переменные в начале файла. Например:
{% set ip = grains['ip4_interfaces']['eth1'][0] %}
{% set domain = pillar['company_domain'] %}
{% set version = pillar['site_version'] %}
{% set site_url = 'www.' + domain %}
[...]
Все работает нормально, но при открытии сгенерированного файла я получаю блок пустых строк, где был код jinja.
Я что-то делаю неправильно?
Если нет, есть ли способ избавиться от этих пустых строк при использовании шаблонов?
Ответы
Ответ 1
В Jinja2 есть контроль пробелов. Возможно, вы захотите:
{%- set ip = grains['ip4_interfaces']['eth1'][0] -%}
{%- set domain = pillar['company_domain'] -%}
{%- set version = pillar['site_version'] -%}
{%- set site_url = 'www.' + domain -%}
[...]
Кроме того, файл конфигурации поддерживает jinja_trim_blocks
и jinja_lstrip_blocks
.