import_role – Импорт роли в пьесу
Новая в версии 2.4.
Описание
- Подобно ключевому слову
roles:, эта задача загружает роль, но позволяет контролировать ее, когда задачи роли выполняются между другими задачами пьесы. - Большинство ключевых слов, циклов и условных операторов будут применяться только к импортированным задачам, а не к самому этому оператору. Если вам нужно обратное поведение, используйте include_role вместо этого.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| allow_duplicates boolean |
| Переопределяет параметр метаданных роли, позволяя использовать роль более одного раза с одинаковыми параметрами. |
| defaults_from строка | Значение по умолчанию: "main" | Файл для загрузки из каталога defaults/ роли. |
| handlers_from строка добавлен в 2.8 | Значение по умолчанию: "main" | Файл для загрузки из каталога handlers/ роли. |
| name строка / обязательно | Имя роли для выполнения. | |
| tasks_from строка | Значение по умолчанию: "main" | Файл для загрузки из каталога tasks/ роли. |
| vars_from строка | Значение по умолчанию: "main" | Файл для загрузки из каталога vars/ роли. |
Примечания
Примечание
- Обработчики доступны для всей пьесы.
- Начиная с Ansible 2.7, переменные, определенные в
varsиdefaultsдля роли, доступны во время парсинга плейбука. Благодаря этому эти переменные будут доступны ролям и задачам, выполняемым до расположения задачи import_role. - В отличие от include_role, экспозиция переменных не настраивается и всегда будет доступна.
См. также
См. также
- import_playbook – Импорт плейбука
- Официальная документация модуля import_playbook.
- import_tasks – Импорт списка задач
- Официальная документация модуля import_tasks.
- include_role – Загрузка и выполнение роли
- Официальная документация модуля include_role.
- include_tasks – Динамический импорт списка задач
- Официальная документация модуля include_tasks.
- Включение и импорт
- Дополнительная информация об импорте и включении плейбуков, ролей и задач.
Примеры
- 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
Статус
- Этот модуль гарантированно не будет содержать обратной несовместимости в будущем. [stableinterface]
- Этот модуль поддерживается командой Ansible Core. [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.8/modules/import_role_module.html