Мои коллеги поддерживают файл конфигурации, который SaltStack развертывает в производственных / тестовых / промежуточных средах. Я поддерживаю этот файл, используя diff, чтобы увидеть, что изменилось, и код соответствующего фрагмента jinja.
Имя файла - program.conf а версия SaltStack - program.conf.jinja .
program.conf есть строки вида:
variable = "value"
program.conf.jinja это:
variable = "{{ value }}"
С точки зрения различий, они разные. Но с моей точки зрения они одинаковы. Я ищу прагма-подобную функцию, где я могу сказать пометить файл jinja следующим образом, чтобы я не получил это в выводе diff:
variable = "{{ value }}" # pragma-same: variable = "value"
Я также буду использовать эту утилиту для генерации предупреждений, чтобы заставить людей обновить файл jinja для любой отсутствующей переменной.
variable = "value" иногда разрешается в более сложных строфах, таких как:
{% if pillar.get(...) %}
variable = {{ value }}
{% else %}
variable = {{ value + 2 }}
{% endif %}
