Я хочу включить другой шаблон Jinja2 в контекст Ansible в Jinja2
у меня есть Ansible playbook, который устанавливает множество переменных. Один сценарии и задачи:
- name: create config file
template:
src: 'templates/main_config.j2'
dest: "{{ tmp_dir }}/main_config.json"
шаблон main_config.j2
записывает строки, определенные как переменные в родительских сборниках и задачах Ansible.
Я хочу включить другой шаблон Jinja2 на основе значения Ansible переменной.
{% include "./templates/configurations.j2" %},
{% include "./templates/security.j2" %},
{% include './templates/' + {{ job }} + '_steps.j2' %}
job
- это Анзибль переменную в Родительском сценарии.
это не работает. В чем может быть проблема?
1 ответов
вам не нужно открывать выражение Jinja2 ({{ ... }}
) для ссылки на переменную внутри оператора ({% ... %}
). Вы можете использовать имя переменной напрямую:
{% include './templates/' + job + '_steps.j2' %}