Плагины Vars
Плагины vars вводят дополнительные переменные в выполнение Ansible, которые не поступают из источника инвентаризации, плейбука или командной строки. Конструкции плейбука, такие как ‘host_vars’ и ‘group_vars’, работают с помощью плагинов vars.
Плагины vars были частично реализованы в Ansible 2.0 и переписаны для полной реализации начиная с Ansible 2.4.
Плагин host_group_vars, поставляемый с Ansible, позволяет читать переменные из Переменная для одного компьютера: переменные хоста и Переменная для нескольких компьютеров: переменные группы.
Включение плагинов vars
Вы можете активировать пользовательский плагин vars, поместив его в каталог vars_plugins рядом с вашим плейбуком, внутри роли или поместив его в один из каталогов, указанных в ansible.cfg.
Начиная с Ansible 2.10, плагины vars могут требовать белого списка, а не работать по умолчанию. Чтобы включить плагин, требующий белого списка, установите vars_plugins_enabled в разделе defaults файла ansible.cfg или установите переменную среды ANSIBLE_VARS_ENABLED в список плагинов vars, которые вы хотите выполнить. По умолчанию плагин host_group_vars, поставляемый с Ansible, включен в белый список.
Начиная с Ansible 2.10, вы можете использовать плагины vars в коллекциях. Все плагины vars в коллекциях требуют белого списка и должны использовать полное имя коллекции в формате namespace.collection_name.vars_plugin_name.
[defaults] vars_plugins_enabled = host_group_vars,namespace.collection_name.vars_plugin_name
Использование плагинов vars
По умолчанию плагины vars используются по требованию автоматически после их включения.
Начиная с Ansible 2.10, плагины vars можно запустить в определённые моменты времени. ansible-inventory не использует эти настройки и всегда загружает плагины vars.
Глобальная настройка RUN_VARS_PLUGINS может быть установлена в ansible.cfg с помощью run_vars_plugins в разделе defaults или через переменную окружения ANSIBLE_RUN_VARS_PLUGINS. По умолчанию опция demand запускает все включенные плагины vars, относящиеся к источникам инвентаризации, всякий раз, когда переменные запрашиваются задачами. Вы можете использовать опцию start для запуска всех включенных плагинов vars, относящихся к источникам инвентаризации, после импорта этого источника инвентаризации.
Вы также можете управлять выполнением плагинов vars на основе каждого плагина для плагинов vars, которые поддерживают опцию stage. Чтобы запустить плагин host_group_vars после импорта инвентаризации, вы можете добавить следующее в ansible.cfg:
[vars_host_group_vars] stage = inventory
Списки плагинов
Вы можете использовать ansible-doc -t vars -l для просмотра списка доступных плагинов. Используйте ansible-doc -t vars <plugin name> для просмотра конкретной документации и примеров по каждому плагину.
См. также
- Плагины действий
-
Плагины действий Ansible
- Плагины кэширования
-
Плагины кэширования Ansible
- Плагины обратного вызова
-
Плагины обратного вызова Ansible
- Плагины соединений
-
Плагины соединений Ansible
- Плагины инвентаризации
-
Плагины инвентаризации Ansible
- Плагины оболочки
-
Плагины оболочки Ansible
- Плагины стратегий
-
Плагины стратегий Ansible
- Список рассылки пользователей
-
Есть вопрос? Задайте его на форуме!
- irc.freenode.net
-
Чат-канал #ansible IRC
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/plugins/vars.html