Spec-Zone.ru › Ansible 2.10

Плагины обратного вызова

  • Примеры плагинов обратного вызова
  • Включение плагинов обратного вызова
  • Установка плагина обратного вызова для ansible-playbook
  • Установка плагина обратного вызова для команд ad-hoc
  • Список плагинов

Плагины обратного вызова позволяют добавлять новые возможности в Ansible при реагировании на события. По умолчанию, плагины обратного вызова контролируют большую часть выводимой информации при выполнении командной строки, но также могут быть использованы для добавления дополнительного вывода, интеграции с другими инструментами и передачи событий в хранилище данных.

Примеры плагинов обратного вызова

Плагин обратного вызова log_plays служит примером того, как записывать события playbook в файл журнала, а плагин обратного вызова mail отправляет электронные письма при сбоях в playbook.

Плагин обратного вызова say отвечает синтезированной речью компьютера в связи с событиями в playbook.

Включение плагинов обратного вызова

Вы можете активировать пользовательский плагин обратного вызова, поместив его в папку callback_plugins рядом с вашим playbook, внутри роли или в одном из каталогов плагинов обратного вызова, настроенных в ansible.cfg.

Плагины загружаются в алфавитном порядке. Например, плагин, реализованный в файле с именем 1_first.py, будет выполняться перед файлом плагина с именем 2_second.py.

Большинство плагинов обратного вызова, поставляемых с Ansible, отключены по умолчанию и должны быть включены в ваш файл ansible.cfg, чтобы работать. Например:

#callback_whitelist = timer, mail, profile_roles, collection_namespace.collection_name.custom_callback

Установка плагина обратного вызова для ansible-playbook

Вы можете иметь только один плагин в качестве основного менеджера консольного вывода. Если вы хотите заменить стандартный, вы должны определить CALLBACK_TYPE = stdout в подклассе, а затем настроить плагин stdout в ansible.cfg. Например:

stdout_callback = dense

или для моего пользовательского плагина обратного вызова:

stdout_callback = mycallback

Это влияет только на ansible-playbook по умолчанию.

Установка плагина обратного вызова для команд ad-hoc

Команда ansible ad hoc специально использует другой плагин обратного вызова для stdout, поэтому в Настройки конфигурации Ansible есть дополнительная настройка для использования плагина stdout, определённого выше:

[defaults]
bin_ansible_callbacks=True

Вы также можете установить это как переменную среды:

export ANSIBLE_LOAD_CALLBACK_PLUGINS=1

Список плагинов

Вы можете использовать ansible-doc -t callback -l для просмотра списка доступных плагинов. Используйте ansible-doc -t callback <plugin name> для просмотра конкретных документов и примеров.

См. также

Плагины действий

Плагины действий Ansible

Плагины кэша

Плагины кэша Ansible

Плагины подключения

Плагины подключения Ansible

Плагины инвентаризации

Плагины инвентаризации Ansible

Плагины оболочки

Плагины оболочки Ansible

Плагины стратегии

Плагины стратегии Ansible

Плагины переменных

Плагины переменных Ansible

Список рассылки пользователей

Есть вопрос? Загляните на страницу группы!

webchat.freenode.net

IRC-чат-канал #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.10/plugins/callback.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API