import_role – Импорт роли в пьесу
Новая версия 2.4.
Описание
- Подобно ключевому слову
roles:, эта задача загружает роль, но позволяет управлять ей, когда задачи роли выполняются между другими задачами пьесы. - Большинство ключевых слов, циклов и условных операторов будут применяться только к импортированным задачам, а не к этому оператору самому. Если нужно обратное поведение, используйте include_role вместо этого. Для лучшего понимания различий можно прочитать Руководство по включению и импорту.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| allow_duplicates логический |
| Переопределяет настройку метаданных роли для разрешения использования роли более одного раза с одинаковыми параметрами. |
| defaults_from - | Значение по умолчанию: "main" | Файл для загрузки из каталога defaults/ роли. |
| name - / обязательно | Имя роли, которая должна быть выполнена. | |
| private логический |
| Этот параметр является пустым, а функциональность, описанная в предыдущих версиях, не была реализована. Этот параметр будет удален в Ansible v2.8. |
| tasks_from - | Значение по умолчанию: "main" | Файл для загрузки из каталога tasks/ роли. |
| vars_from - | Значение по умолчанию: "main" | Файл для загрузки из каталога vars/ роли. |
Примечания
Примечание
- Обработчики доступны для всей пьесы.
- С Ansible 2.7: переменные, определенные в
varsиdefaultsдля роли, доступны во время парсинга плейбука. Благодаря этому эти переменные будут доступны ролям и задачам, выполненным до расположения задачиimport_role. - В отличие от
include_role, доступ к переменным не настраивается и всегда будет доступен.
Примеры
- hosts: all
tasks:
- import_role:
name: myrole
- name: Run tasks/other.yaml instead of 'main'
import_role:
name: myrole
tasks_from: other
- name: Pass variables to role
import_role:
name: myrole
vars:
rolevar1: value from task
- name: Apply condition to each task in role
import_role:
name: myrole
when: not idontwanttorun
Статус
- Данный модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается основной командой 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/import_role_module.html