Spec-Zone.ru › Ansible 2.5
  • Примеры плагинов обратного вызова
  • Включение плагинов обратного вызова
    • Управление stdout
    • Управление AdHoc
  • Список плагинов

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

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

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

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

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

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

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

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

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

#callback_whitelist = timer, mail, profile_roles

Управление stdout

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

stdout_callback = dense

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

stdout_callback = mycallback

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

Управление AdHoc

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

[defaults]
bin_ansible_callbacks=True

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

export ANSIBLE_LOAD_CALLBACK_PLUGINS=1

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

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

  • actionable - отображает только элементы, требующие внимания
  • context_demo - демонстрационный плагин обратного вызова, который добавляет контекст книги задач/задач
  • debug - отформатированный вывод stdout/stderr
  • default - стандартный вывод Ansible на экран
  • dense - минимальный вывод stdout
  • foreman - Отправляет события в Foreman
  • full_skip - подавляет задачи, если все хосты пропущены
  • hipchat - публикует события задач в hipchat
  • jabber - публикует события задач на сервере jabber
  • json - вывод Ansible на экран в формате JSON
  • junit - записывает вывод книги задач в файл JUnit.
  • log_plays - запись вывода книги задач в файл журнала
  • logentries - Отправляет события в Logentries
  • logstash - Отправляет события в Logstash
  • mail - Отправка событий ошибок по электронной почте
  • minimal - минимальный вывод Ansible на экран
  • null - Не отображать ничего на экране
  • oneline - вывод Ansible на экран в одну строку
  • osx_say - вывод Ansible на экран в одну строку
  • profile_roles - добавление информации о времени выполнения ролей
  • profile_tasks - добавление информации о времени выполнения задач
  • selective - вывод только определённых задач
  • skippy - вывод Ansible на экран, игнорирующий пропущенный статус
  • slack - Отправка событий книги задач в канал Slack
  • stderr - Разделение вывода, отправка не удачных задач в stderr
  • syslog_json - отправка событий JSON в syslog
  • timer - Добавление времени к статистике книги задач
  • tree - Сохранение событий хостов в файлы
  • unixy - сжатый вывод Ansible
  • yaml - вывод Ansible на экран в формате YAML

См. также

Плагины действий
Плагины действий Ansible
Плагины кэширования
Плагины кэширования Ansible
Плагины соединения
Плагины соединения Ansible
Плагины инвентаризации
Плагины инвентаризации Ansible
Плагины оболочки
Плагины оболочки Ansible
Плагины стратегии
Плагины стратегии Ansible
Плагины переменных
Плагины переменных Ansible
Список рассылки пользователей
У вас есть вопрос? Заходите на группу Google!
webchat.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.5/plugins/callback.html

Spec-Zone.ru

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