Spec-Zone.ru › Ansible 2.10

community.general.diy – Настроить вывод

Примечание

Этот плагин входит в коллекцию community.general (версия 1.3.2).

Для его установки используйте: ansible-galaxy collection install community.general.

Для использования в книге задач укажите: community.general.diy.

Новое в версии 0.2.0: модуля community.general

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • См. также
  • Примеры

Обзор

  • Плагин обратного вызова, позволяющий предоставлять собственные пользовательские шаблоны обратных вызовов для вывода.

Требования

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

  • установить как stdout_callback в конфигурации

Параметры

Параметр Варианты/Значения по умолчанию Конфигурация Комментарии
check_mode_markers
boolean
добавлено в версии 2.9 ansible.builtin
    Варианты:
  • no ←
  • yes
записи ini:

[defaults]
check_mode_markers = no

env:ANSIBLE_CHECK_MODE_MARKERS
Переключатель для управления отображением маркеров при работе в режиме проверки.
Маркеры — это DRY RUN в начале и конце выполнения playbook (при вызове ansible-playbook --check) и CHECK MODE в качестве суффикса для каждой задачи и действия, выполняемых в режиме проверки.
display_failed_stderr
boolean
добавлено в версии 2.7 ansible.builtin
    Варианты:
  • no ←
  • yes
записи ini:

[defaults]
display_failed_stderr = no

env:ANSIBLE_DISPLAY_FAILED_STDERR
Переключатель для управления отображением неудачных и недоступных задач в STDERR (вместо STDOUT)
display_ok_hosts
boolean
добавлено в версии 2.7 ansible.builtin
    Варианты:
  • no
  • yes ←
записи ini:

[defaults]
display_ok_hosts = yes

env:ANSIBLE_DISPLAY_OK_HOSTS
Переключатель для управления отображением результатов выполнения задач/хостов со статусом 'ok' в задаче
display_skipped_hosts
boolean
    Варианты:
  • no
  • yes ←
записи ini:

[defaults]
display_skipped_hosts = yes

env:DISPLAY_SKIPPED_HOSTS
Удалено в: версии 2.12 ansible.builtin
Причина: переменные среды без префикса "ANSIBLE_" устарели
Альтернатива: переменная среды "ANSIBLE_DISPLAY_SKIPPED_HOSTS"
env:ANSIBLE_DISPLAY_SKIPPED_HOSTS
Переключатель для управления отображением результатов пропущенных задач/хостов в задаче
on_any_msg
string
записи ini:

[callback_diy]
on_any_msg = None

env:ANSIBLE_CALLBACK_DIY_ON_ANY_MSG
var: ansible_callback_diy_on_any_msg
Выходные данные для обратного вызова on_any.
on_any_msg_color
string
записи ini:

[callback_diy]
on_any_msg_color = None

env:ANSIBLE_CALLBACK_DIY_ON_ANY_MSG_COLOR
var: ansible_callback_diy_on_any_msg_color
Цвет вывода для on_any_msg.
Шаблон должен отображать допустимое значение цвета.
on_file_diff_msg
string
записи ini:

[callback_diy]
on_file_diff_msg = None

env:ANSIBLE_CALLBACK_DIY_ON_FILE_DIFF_MSG
var: ansible_callback_diy_on_file_diff_msg
Выходные данные для обратного вызова on_file_diff.
on_file_diff_msg_color
string
записи ini:

[callback_diy]
on_file_diff_msg_color = None

env:ANSIBLE_CALLBACK_DIY_ON_FILE_DIFF_MSG_COLOR
var: ansible_callback_diy_on_file_diff_msg_color
Цвет вывода для on_file_diff_msg.
Шаблон должен отображать допустимое значение цвета.
playbook_on_handler_task_start_msg
string
записи ini:

[callback_diy]
playbook_on_handler_task_start_msg = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_HANDLER_TASK_START_MSG
var: ansible_callback_diy_playbook_on_handler_task_start_msg
Выходные данные для обратного вызова playbook_on_handler_task_start.
playbook_on_handler_task_start_msg_color
string
записи ini:

[callback_diy]
playbook_on_handler_task_start_msg_color = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_HANDLER_TASK_START_MSG_COLOR
var: ansible_callback_diy_playbook_on_handler_task_start_msg_color
Цвет вывода для playbook_on_handler_task_start_msg.
Шаблон должен отображать допустимое значение цвета.
playbook_on_include_msg
string
записи ini:

[callback_diy]
playbook_on_include_msg = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_INCLUDE_MSG
var: ansible_callback_diy_playbook_on_include_msg
Выходные данные для обратного вызова playbook_on_include.
playbook_on_include_msg_color
string
записи ini:

[callback_diy]
playbook_on_include_msg_color = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_INCLUDE_MSG_COLOR
var: ansible_callback_diy_playbook_on_include_msg_color
Цвет вывода для playbook_on_include_msg.
Шаблон должен отображать допустимое значение цвета.
playbook_on_no_hosts_matched_msg
string
записи ini:

[callback_diy]
playbook_on_no_hosts_matched_msg = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_NO_HOSTS_MATCHED_MSG
var: ansible_callback_diy_playbook_on_no_hosts_matched_msg
Выходные данные для обратного вызова playbook_on_no_hosts_matched.
playbook_on_no_hosts_matched_msg_color
string
записи ini:

[callback_diy]
playbook_on_no_hosts_matched_msg_color = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_NO_HOSTS_MATCHED_MSG_COLOR
var: ansible_callback_diy_playbook_on_no_hosts_matched_msg_color
Цвет вывода для playbook_on_no_hosts_matched_msg.
Шаблон должен отображать допустимое значение цвета.
playbook_on_no_hosts_remaining_msg
string
записи ini:

[callback_diy]
playbook_on_no_hosts_remaining_msg = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_NO_HOSTS_REMAINING_MSG
var: ansible_callback_diy_playbook_on_no_hosts_remaining_msg
Выходные данные для обратного вызова playbook_on_no_hosts_remaining.
playbook_on_no_hosts_remaining_msg_color
string
записи ini:

[callback_diy]
playbook_on_no_hosts_remaining_msg_color = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_NO_HOSTS_REMAINING_MSG_COLOR
var: ansible_callback_diy_playbook_on_no_hosts_remaining_msg_color
Цвет вывода для playbook_on_no_hosts_remaining_msg.
Шаблон должен отображать допустимое значение цвета.
playbook_on_notify_msg
string
записи ini:

[callback_diy]
playbook_on_notify_msg = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_NOTIFY_MSG
var: ansible_callback_diy_playbook_on_notify_msg
Выходные данные для обратного вызова playbook_on_notify.
playbook_on_notify_msg_color
string
записи ini:

[callback_diy]
playbook_on_notify_msg_color = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_NOTIFY_MSG_COLOR
var: ansible_callback_diy_playbook_on_notify_msg_color
Цвет вывода для playbook_on_notify_msg.
Шаблон должен отображать допустимое значение цвета.
playbook_on_play_start_msg
string
записи ini:

[callback_diy]
playbook_on_play_start_msg = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_PLAY_START_MSG
var: ansible_callback_diy_playbook_on_play_start_msg
Выходные данные для обратного вызова playbook_on_play_start.
playbook_on_play_start_msg_color
string
записи ini:

[callback_diy]
playbook_on_play_start_msg_color = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_PLAY_START_MSG_COLOR
var: ansible_callback_diy_playbook_on_play_start_msg_color
Цвет вывода для playbook_on_play_start_msg.
Шаблон должен отображать допустимое значение цвета.
playbook_on_setup_msg
string
записи ini:

[callback_diy]
playbook_on_setup_msg = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_SETUP_MSG
var: ansible_callback_diy_playbook_on_setup_msg
Выходные данные для обратного вызова playbook_on_setup.
playbook_on_setup_msg_color
string
записи ini:

[callback_diy]
playbook_on_setup_msg_color = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_SETUP_MSG_COLOR
var: ansible_callback_diy_playbook_on_setup_msg_color
Цвет вывода для playbook_on_setup_msg.
Шаблон должен отображать допустимое значение цвета.
playbook_on_start_msg
string
записи ini:

[callback_diy]
playbook_on_start_msg = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_START_MSG
var: ansible_callback_diy_playbook_on_start_msg
Выходные данные для обратного вызова playbook_on_start.
playbook_on_start_msg_color
string
записи ini:

[callback_diy]
playbook_on_start_msg_color = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_START_MSG_COLOR
var: ansible_callback_diy_playbook_on_start_msg_color
Цвет вывода для playbook_on_start_msg.
Шаблон должен отображать допустимое значение цвета.
playbook_on_stats_msg
string
ini entries:

[callback_diy]
playbook_on_stats_msg = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_STATS_MSG
var: ansible_callback_diy_playbook_on_stats_msg
Выходные данные для обратного вызова playbook_on_stats.
playbook_on_stats_msg_color
string
ini entries:

[callback_diy]
playbook_on_stats_msg_color = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_STATS_MSG_COLOR
var: ansible_callback_diy_playbook_on_stats_msg_color
Цвет вывода для playbook_on_stats_msg.
Шаблон должен отображать допустимое значение цвета.
playbook_on_task_start_msg
string
ini entries:

[callback_diy]
playbook_on_task_start_msg = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_TASK_START_MSG
var: ansible_callback_diy_playbook_on_task_start_msg
Выходные данные для обратного вызова playbook_on_task_start.
playbook_on_task_start_msg_color
string
ini entries:

[callback_diy]
playbook_on_task_start_msg_color = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_TASK_START_MSG_COLOR
var: ansible_callback_diy_playbook_on_task_start_msg_color
Цвет вывода для playbook_on_task_start_msg.
Шаблон должен отображать допустимое значение цвета.
playbook_on_vars_prompt_msg
string
ini entries:

[callback_diy]
playbook_on_vars_prompt_msg = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_VARS_PROMPT_MSG
var: ansible_callback_diy_playbook_on_vars_prompt_msg
Выходные данные для обратного вызова playbook_on_vars_prompt.
playbook_on_vars_prompt_msg_color
string
ini entries:

[callback_diy]
playbook_on_vars_prompt_msg_color = None

env:ANSIBLE_CALLBACK_DIY_PLAYBOOK_ON_VARS_PROMPT_MSG_COLOR
var: ansible_callback_diy_playbook_on_vars_prompt_msg_color
Цвет вывода для playbook_on_vars_prompt_msg.
Шаблон должен отображать допустимое значение цвета.
runner_item_on_failed_msg
string
ini entries:

[callback_diy]
runner_item_on_failed_msg = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ITEM_ON_FAILED_MSG
var: ansible_callback_diy_runner_item_on_failed_msg
Выходные данные для обратного вызова runner_item_on_failed.
runner_item_on_failed_msg_color
string
ini entries:

[callback_diy]
runner_item_on_failed_msg_color = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ITEM_ON_FAILED_MSG_COLOR
var: ansible_callback_diy_runner_item_on_failed_msg_color
Цвет вывода для runner_item_on_failed_msg.
Шаблон должен отображать допустимое значение цвета.
runner_item_on_ok_msg
string
ini entries:

[callback_diy]
runner_item_on_ok_msg = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ITEM_ON_OK_MSG
var: ansible_callback_diy_runner_item_on_ok_msg
Выходные данные для обратного вызова runner_item_on_ok.
runner_item_on_ok_msg_color
string
ini entries:

[callback_diy]
runner_item_on_ok_msg_color = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ITEM_ON_OK_MSG_COLOR
var: ansible_callback_diy_runner_item_on_ok_msg_color
Цвет вывода для runner_item_on_ok_msg.
Шаблон должен отображать допустимое значение цвета.
runner_item_on_skipped_msg
string
ini entries:

[callback_diy]
runner_item_on_skipped_msg = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ITEM_ON_SKIPPED_MSG
var: ansible_callback_diy_runner_item_on_skipped_msg
Выходные данные для обратного вызова runner_item_on_skipped.
runner_item_on_skipped_msg_color
string
ini entries:

[callback_diy]
runner_item_on_skipped_msg_color = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ITEM_ON_SKIPPED_MSG_COLOR
var: ansible_callback_diy_runner_item_on_skipped_msg_color
Цвет вывода для runner_item_on_skipped_msg.
Шаблон должен отображать допустимое значение цвета.
runner_on_failed_msg
string
ini entries:

[callback_diy]
runner_on_failed_msg = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_FAILED_MSG
var: ansible_callback_diy_runner_on_failed_msg
Выходные данные для обратного вызова runner_on_failed.
runner_on_failed_msg_color
string
ini entries:

[callback_diy]
runner_on_failed_msg_color = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_FAILED_MSG_COLOR
var: ansible_callback_diy_runner_on_failed_msg_color
Цвет вывода для runner_on_failed_msg.
Шаблон должен отображать допустимое значение цвета.
runner_on_no_hosts_msg
string
ini entries:

[callback_diy]
runner_on_no_hosts_msg = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_NO_HOSTS_MSG
var: ansible_callback_diy_runner_on_no_hosts_msg
Выходные данные для обратного вызова runner_on_no_hosts.
runner_on_no_hosts_msg_color
string
ini entries:

[callback_diy]
runner_on_no_hosts_msg_color = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_NO_HOSTS_MSG_COLOR
var: ansible_callback_diy_runner_on_no_hosts_msg_color
Цвет вывода для runner_on_no_hosts_msg.
Шаблон должен отображать допустимое значение цвета.
runner_on_ok_msg
string
ini entries:

[callback_diy]
runner_on_ok_msg = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_OK_MSG
var: ansible_callback_diy_runner_on_ok_msg
Выходные данные для обратного вызова runner_on_ok.
runner_on_ok_msg_color
string
ini entries:

[callback_diy]
runner_on_ok_msg_color = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_OK_MSG_COLOR
var: ansible_callback_diy_runner_on_ok_msg_color
Цвет вывода для runner_on_ok_msg.
Шаблон должен отображать допустимое значение цвета.
runner_on_skipped_msg
string
ini entries:

[callback_diy]
runner_on_skipped_msg = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_SKIPPED_MSG
var: ansible_callback_diy_runner_on_skipped_msg
Выходные данные для обратного вызова runner_on_skipped.
runner_on_skipped_msg_color
string
ini entries:

[callback_diy]
runner_on_skipped_msg_color = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_SKIPPED_MSG_COLOR
var: ansible_callback_diy_runner_on_skipped_msg_color
Цвет вывода для runner_on_skipped_msg.
Шаблон должен отображать допустимое значение цвета.
runner_on_start_msg
string
ini entries:

[callback_diy]
runner_on_start_msg = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_START_MSG
var: ansible_callback_diy_runner_on_start_msg
Выходные данные для обратного вызова runner_on_start.
runner_on_start_msg_color
string
ini entries:

[callback_diy]
runner_on_start_msg_color = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_START_MSG_COLOR
var: ansible_callback_diy_runner_on_start_msg_color
Цвет вывода для runner_on_start_msg.
Шаблон должен отображать допустимое значение цвета.
runner_on_unreachable_msg
string
ini entries:

[callback_diy]
runner_on_unreachable_msg = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_UNREACHABLE_MSG
var: ansible_callback_diy_runner_on_unreachable_msg
Выходные данные для обратного вызова runner_on_unreachable.
runner_on_unreachable_msg_color
string
ini entries:

[callback_diy]
runner_on_unreachable_msg_color = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_ON_UNREACHABLE_MSG_COLOR
var: ansible_callback_diy_runner_on_unreachable_msg_color
Цвет вывода для runner_on_unreachable_msg.
Шаблон должен отображать допустимое значение цвета.
runner_retry_msg
string
ini entries:

[callback_diy]
runner_retry_msg = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_RETRY_MSG
var: ansible_callback_diy_runner_retry_msg
Выходные данные для обратного вызова runner_retry.
runner_retry_msg_color
string
ini entries:

[callback_diy]
runner_retry_msg_color = None

env:ANSIBLE_CALLBACK_DIY_RUNNER_RETRY_MSG_COLOR
var: ansible_callback_diy_runner_retry_msg_color
Цвет вывода для runner_retry_msg.
Шаблон должен отображать допустимое значение цвета.
show_custom_stats
boolean
    Варианты:
  • нет ←
  • да
Входные данные ini:

[defaults]
show_custom_stats = нет

Переменная среды: ANSIBLE_SHOW_CUSTOM_STATS
Добавляет пользовательские статистические данные, установленные с помощью плагина set_stats, в сводку выполнения.
show_per_host_start
boolean
добавлен в версии 2.9 ansible.builtin
    Варианты:
  • нет ←
  • да
Входные данные ini:

[defaults]
show_per_host_start = нет

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

Примечания

Примечание

  • Использует вывод плагина обратного вызова default, когда пользовательское сообщение обратного вызова (msg) не указано.
  • Делает доступными данные события обратного вызова через словарь ansible_callback_diy, который может быть использован в контексте шаблонизации для параметров. Словарь доступен только в контексте шаблонизации для параметров. Это не переменная, доступная в других контекстах выполнения, таких как playbook, play, задача и т.д.
  • Параметры, устанавливаемые соответствующими входными переменными, могут быть установлены только с помощью переменной, если переменная была установлена в контексте, доступном соответствующему обработчику обратного вызова. Используйте словарь ansible_callback_diy, чтобы увидеть, что доступно обработчику обратного вызова. Кроме того, ansible_callback_diy.top_level_var_names отобразит имена переменных верхнего уровня, доступные обработчику обратного вызова.
  • Каждое значение параметра рендерится как шаблон перед его оценкой. Это позволяет динамически использовать параметр. Например, "{{ 'yellow' if ansible_callback_diy.result.is_changed else 'bright green' }}"
  • Условие для всех msg параметров: если значение is None or omit, то параметр не используется. Эффект: использование плагина обратного вызова default для вывода.
  • Условие для всех msg параметров: если значение is not None and not omit and length is not greater than 0, то параметр используется без вывода. Эффект: подавление вывода.
  • Условие для всех msg параметров: если значение is not None and not omit and length is greater than 0, то параметр используется с выводом. Эффект: рендеринг значения как шаблона и вывод.
  • Допустимые значения цветов: black, bright gray, blue, white, green, bright blue, cyan, bright green, red, bright cyan, purple, bright red, yellow, bright purple, dark gray, bright yellow, magenta, bright magenta, normal

См. также

См. также

default – стандартный вывод Ansible

Официальная документация плагина обратного вызова default.

Примеры

ansible.cfg: >
  # Enable plugin
  [defaults]
  stdout_callback=community.general.diy

  [callback_diy]
  # Output when playbook starts
  playbook_on_start_msg="DIY output(via ansible.cfg): playbook example: {{ ansible_callback_diy.playbook.file_name }}"
  playbook_on_start_msg_color=yellow

  # Comment out to allow default plugin output
  # playbook_on_play_start_msg="PLAY: starting play {{ ansible_callback_diy.play.name }}"

  # Accept on_skipped_msg or ansible_callback_diy_runner_on_skipped_msg as input vars
  # If neither are supplied, omit the option
  runner_on_skipped_msg="{{ on_skipped_msg | default(ansible_callback_diy_runner_on_skipped_msg) | default(omit) }}"

  # Newline after every callback
  # on_any_msg='{{ " " | join("\n") }}'

playbook.yml: >
  ---
  - name: "Default plugin output: play example"
    hosts: localhost
    gather_facts: no
    tasks:
      - name:  Default plugin output
        ansible.builtin.debug:
          msg: default plugin output

  - name: Override from play vars
    hosts: localhost
    gather_facts: no
    vars:
      ansible_connection: local
      green: "\e[0m\e[38;5;82m"
      yellow: "\e[0m\e[38;5;11m"
      bright_purple: "\e[0m\e[38;5;105m"
      cyan: "\e[0m\e[38;5;51m"
      green_bg_black_fg: "\e[0m\e[48;5;40m\e[38;5;232m"
      yellow_bg_black_fg: "\e[0m\e[48;5;226m\e[38;5;232m"
      purple_bg_white_fg: "\e[0m\e[48;5;57m\e[38;5;255m"
      cyan_bg_black_fg: "\e[0m\e[48;5;87m\e[38;5;232m"
      magenta: "\e[38;5;198m"
      white: "\e[0m\e[38;5;255m"
      ansible_callback_diy_playbook_on_play_start_msg: "\n{{green}}DIY output(via play vars): play example: {{magenta}}{{ansible_callback_diy.play.name}}\n\n"
      ansible_callback_diy_playbook_on_task_start_msg: "DIY output(via play vars): task example: {{ ansible_callback_diy.task.name }}"
      ansible_callback_diy_playbook_on_task_start_msg_color: cyan
      ansible_callback_diy_playbook_on_stats_msg: |+2
                CUSTOM STATS
        ==============================
        {% for key in ansible_callback_diy.stats | sort %}
        {% if ansible_callback_diy.stats[key] %}
        {% if key == 'ok' %}
        {% set color_one = lookup('vars','green_bg_black_fg') %}
        {% set prefix = '      ' %}
        {% set suffix = '     ' %}
        {% set color_two = lookup('vars','green') %}
        {% elif key == 'changed' %}
        {% set color_one = lookup('vars','yellow_bg_black_fg') %}
        {% set prefix = '   ' %}
        {% set suffix = '   ' %}
        {% set color_two = lookup('vars','yellow') %}
        {% elif key == 'processed' %}
        {% set color_one = lookup('vars','purple_bg_white_fg') %}
        {% set prefix = '  ' %}
        {% set suffix = '  ' %}
        {% set color_two = lookup('vars','bright_purple') %}
        {% elif key == 'skipped' %}
        {% set color_one = lookup('vars','cyan_bg_black_fg') %}
        {% set prefix = '   ' %}
        {% set suffix = '   ' %}
        {% set color_two = lookup('vars','cyan') %}
        {% else %}
        {% set color_one = "" %}
        {% set prefix = "" %}
        {% set suffix = "" %}
        {% set color_two = "" %}
        {% endif %}
        {{ color_one }}{{ "%s%s%s" | format(prefix,key,suffix) }}{{ color_two }}: {{ ansible_callback_diy.stats[key] | to_nice_yaml }}
        {% endif %}
        {% endfor %}

    tasks:
      - name: Custom banner with default plugin result output
        ansible.builtin.debug:
          msg: "default plugin output: result example"

      - name: Override from task vars
        ansible.builtin.debug:
          msg: "example {{ two }}"
        changed_when: true
        vars:
          white_fg_red_bg: "\e[0m\e[48;5;1m"
          two: "{{ white_fg_red_bg }}    2    "
          ansible_callback_diy_playbook_on_task_start_msg: "\nDIY output(via task vars): task example: {{ ansible_callback_diy.task.name }}"
          ansible_callback_diy_playbook_on_task_start_msg_color: bright magenta
          ansible_callback_diy_runner_on_ok_msg: "DIY output(via task vars): result example: \n{{ ansible_callback_diy.result.output.msg }}\n"
          ansible_callback_diy_runner_on_ok_msg_color: "{{ 'yellow' if ansible_callback_diy.result.is_changed else 'bright green' }}"

      - name: Suppress output
        ansible.builtin.debug:
          msg: i should not be displayed
        vars:
          ansible_callback_diy_playbook_on_task_start_msg: ""
          ansible_callback_diy_runner_on_ok_msg: ""

      - name: Using alias vars (see ansible.cfg)
        ansible.builtin.debug:
          msg:
        when: False
        vars:
          ansible_callback_diy_playbook_on_task_start_msg: ""
          on_skipped_msg: "DIY output(via task vars): skipped example:\n\e[0m\e[38;5;4m\u25b6\u25b6 {{ ansible_callback_diy.result.task.name }}\n"
          on_skipped_msg_color: white

      - name: Just stdout
        ansible.builtin.command: echo some stdout
        vars:
          ansible_callback_diy_playbook_on_task_start_msg: "\n"
          ansible_callback_diy_runner_on_ok_msg: "{{ ansible_callback_diy.result.output.stdout }}\n"

      - name: Multiline output
        ansible.builtin.debug:
          msg: "{{ multiline }}"
        vars:
          ansible_callback_diy_playbook_on_task_start_msg: "\nDIY output(via task vars): task example: {{ ansible_callback_diy.task.name }}"
          multiline: "line\nline\nline"
          ansible_callback_diy_runner_on_ok_msg: |+2
            some
            {{ ansible_callback_diy.result.output.msg }}
            output

          ansible_callback_diy_playbook_on_task_start_msg_color: bright blue

      - name: Indentation
        ansible.builtin.debug:
          msg: "{{ item.msg }}"
        with_items:
          - { indent: 1, msg: one., color: red }
          - { indent: 2, msg: two.., color: yellow }
          - { indent: 3, msg: three..., color: bright yellow }
        vars:
          ansible_callback_diy_runner_item_on_ok_msg: "{{ ansible_callback_diy.result.output.msg | indent(item.indent, True) }}"
          ansible_callback_diy_runner_item_on_ok_msg_color: "{{ item.color }}"
          ansible_callback_diy_runner_on_ok_msg: "GO!!!"
          ansible_callback_diy_runner_on_ok_msg_color: bright green

      - name: Using lookup and template as file
        ansible.builtin.shell: "echo {% raw %}'output from {{ file_name }}'{% endraw %} > {{ file_name }}"
        vars:
          ansible_callback_diy_playbook_on_task_start_msg: "\nDIY output(via task vars): task example: {{ ansible_callback_diy.task.name }}"
          file_name: diy_file_template_example
          ansible_callback_diy_runner_on_ok_msg: "{{ lookup('template', file_name) }}"

      - name: 'Look at top level vars available to the "runner_on_ok" callback'
        ansible.builtin.debug:
          msg: ''
        vars:
          ansible_callback_diy_playbook_on_task_start_msg: "\nDIY output(via task vars): task example: {{ ansible_callback_diy.task.name }}"
          ansible_callback_diy_runner_on_ok_msg: |+2
            {% for var in (ansible_callback_diy.top_level_var_names|reject('match','vars|ansible_callback_diy.*')) | sort %}
            {{ green }}{{ var }}:
              {{ white }}{{ lookup('vars', var) }}

            {% endfor %}
          ansible_callback_diy_runner_on_ok_msg_color: white

      - name: 'Look at event data available to the "runner_on_ok" callback'
        ansible.builtin.debug:
          msg: ''
        vars:
          ansible_callback_diy_playbook_on_task_start_msg: "\nDIY output(via task vars): task example: {{ ansible_callback_diy.task.name }}"
          ansible_callback_diy_runner_on_ok_msg: |+2
            {% for key in ansible_callback_diy | sort %}
            {{ green }}{{ key }}:
              {{ white }}{{ ansible_callback_diy[key] }}

            {% endfor %}

Авторы

  • Trevor Highfill (@theque5t)

© 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/collections/community/general/diy_callback.html

Spec-Zone.ru

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