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

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

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

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

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

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

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

Вы можете активировать пользовательский плагин обратного вызова, поместив его в директорию callback_plugins рядом с вашим playbook, внутри роли или поместив его в один из каталогов callback, указанных в настройках 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, поэтому существует дополнительная настройка в Настройки конфигурации Ansible, которую необходимо добавить, чтобы использовать плагин обратного вызова stdout, определенный выше:

[defaults]
bin_ansible_callbacks=True

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

export ANSIBLE_LOAD_CALLBACK_PLUGINS=1

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

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

  • actionable — отображает только элементы, требующие внимания
  • cgroup_memory_recap — Профилирует максимальное использование памяти задачами и полное выполнение с помощью cgroup
  • context_demo — демонстрационный плагин обратного вызова, добавляющий контекст play/task
  • debug — отформатированный вывод stdout/stderr
  • default — стандартный вывод Ansible на экран
  • dense — минимальный вывод stdout
  • foreman — Отправка событий в Foreman
  • full_skip — подавление задач, если все узлы пропущены
  • grafana_annotations — отправка событий ansible в качестве аннотаций на графиках в grafana через http api.
  • hipchat — публикация событий задач в hipchat
  • jabber — публикация событий задач на сервер jabber
  • json — вывод Ansible на экране в формате JSON
  • junit — запись вывода playbook в файл JUnit.
  • log_plays — запись вывода playbook в файл журнала
  • logentries — Отправка событий в Logentries
  • logstash — Отправка событий в Logstash
  • mail — Отправка событий сбоев по электронной почте
  • minimal — минимальный вывод Ansible на экран
  • null — Не отображать ничего на экране
  • oneline — вывод Ansible на экране в одну строку
  • osx_say — вывод Ansible на экране в одну строку
  • profile_roles — добавляет информацию о времени выполнения ролям
  • profile_tasks — добавляет информацию о времени выполнения задачам
  • selective — вывод только определенных задач
  • skippy — вывод Ansible на экране, игнорирующий пропущенный статус
  • slack — Отправка событий play в канал Slack
  • stderr — Разделяет вывод, отправляя завершившиеся задачи в stderr
  • sumologic — Отправка событий результатов задач в Sumologic
  • syslog_json — отправляет JSON-события в syslog
  • timer — Добавление времени к статистике play
  • 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.6/plugins/callback.html

Spec-Zone.ru

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