Jinja2 template


文字列にキャストして連結


raw, !unsafe: jinja2のエスケープを無効にして読む


ansibleが使っているjinja2バージョンの確認


sort(), dictsort(), reverse(): list、dictのソート


loopコントロール

{% set list_var1 = ['aa','bb','cc'] %}
{% for var1 in list_var1 if var1 == 'aa' %}
{{ var1 }}
{% endfor %}

jinja2での正規表現

regex_search, regex_findallが使えるようだ


jinja2テンプレートでの三項演算子

lineinfile:
    dest=/tmp/example.conf
    line={{ item }}
    with_items:
    - 'example_enabled={{ "yes" if example_enabled else "no" }}'
ini_file:
    dest: /etc/yum.conf
    section: main
    option: proxy
    value: "{{ yum_proxy }}"
    state: "{{ 'present' if yum_proxy != None else 'absent' }}"
    backup: yes

行頭、行末のホワイトスペースの制御

Whitespace Control - Jinja2 Documentation (2.10)


Template テンプレート

debug: msg="{{ item.state | default('present') }}"
- name: config file
  template:
    src: example.conf.j2
    dest: /etc/example/example.conf
    owner: root
    group: root
    mode: 0644
    backup: yes
{{ ansible_distribution }}
cat roles/test1/tasks/main.yml
- template: src=roles/test2/templates/text2.j2 dest=/tmp/test2.conf mode=0644
# {{ ansible_managed }}

if: 条件分岐


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2024-01-31 (水) 16:31:41