1
考えるAnsible Jinja2のテンプレート:service
変数定義とAnja Jinja2のテンプレートでマクロ呼び出しの間に余分な空白を取り除くにはどうしたらいいですか?
{% macro directive(name, value) %}
{% if value is defined %}
{{ name }}={{ value }}
{% endif %}
{% endmacro -%}
# {{ ansible_managed }}
[Unit]
{{ directive('Description', service.description) }}
{{ directive('Documentation', service.documentation) }}
{{ directive('Requires', service.requires) }}
:それその
# Ansible managed
[Unit]
Description=Test Template
Requires=multi-user.target
:
service:
description: Test Template
requires: multi-user.target
は、どのように私は、結果の出力に余分な改行を排除するために、テンプレートを変更することができます代わりに次のようになります:
# Ansible managed
[Unit]
Description=Test Template
Requires=multi-user.target
?
を? –
はい、私は "余分な行"または改行を意味しました。私は間違いなく、Jinga2がそれぞれの文 '{%%}'と同様に、各マクロ参照から末尾の改行を自動的に削除すると思いました。 –
マクロ定義と '#{{ansible_managed}}'の間の空白をなくすため、ダッシュを '{%end macro - %}'に追加しました。 –