include – Включение списка пьес или задач
Описание
- Включает файл со списком пьес или задач, которые должны быть выполнены в текущем сценарии.
- Файлы со списком пьес могут включаться только на верхнем уровне. Списки задач могут включаться только там, где обычно выполняются задачи (в пьесе).
- До версии Ansible 2.0 все включения были «статическими» и выполнялись при компиляции пьесы.
- Статические включения не подвержены большинству директив. Например, циклы или условные операторы применяются вместо этого к каждой унаследованной задаче.
- С Ansible 2.0 включения задач динамические и ведут себя больше как реальные задачи. Это означает, что они могут быть проциклены, пропущены и использовать переменные из любого источника. Ansible пытается автоматически определить это, но вы можете использовать директиву
static, которая была добавлена в Ansible 2.1, чтобы обойти автоматическое определение. - Этот модуль также поддерживается для Windows-целей.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| free-form - | Этот модуль позволяет указать имя файла непосредственно без каких-либо других параметров. |
Примечания
Примечание
- Это основная функция Ansible, а не модуль, и её нельзя переопределить как модуль.
- Включение имеет некоторые неинтуитивные поведения в зависимости от того, выполняется ли оно в статическом или динамическом контексте пьесы или сценария, для того, чтобы прояснить поведение, мы переходим к новым наборам модулей (include_tasks, include_role, import_playbook, import_tasks), которые имеют хорошо установленные и ясные характеристики. Этот модуль будет поддерживаться ещё некоторое время, но мы рассматриваем возможность его устаревания в ближайшем будущем.
Примеры
- hosts: localhost
tasks:
- debug:
msg: play1
- name: Include a play after another play
include: otherplays.yaml
- hosts: all
tasks:
- debug:
msg: task1
- name: Include task list in play
include: stuff.yaml
- debug:
msg: task10
- hosts: all
tasks:
- debug:
msg: task1
- name: Include task list in play only if the condition is true
include: "{{ hostvar }}.yaml"
static: no
when: hostvar is defined
Статус
- Этот модуль не гарантирует обратной совместимости интерфейса. [предварительная версия]
- Этот модуль поддерживается Командой Ansible Core. [ядро]
Поддержка Red Hat
Дополнительную информацию о поддержке этого модуля Red Hat можно найти в этой статье базы знаний Red Hat.
Авторы
- Команда Ansible Core (@ansible)
Подсказка
Если вы заметите какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/include_module.html