Плагин обратного вызова YAML печатает метасимволы, когда трассировка playbook перенаправляется в файлPython

Программы на Python
Ответить
Anonymous
 Плагин обратного вызова YAML печатает метасимволы, когда трассировка playbook перенаправляется в файл

Сообщение Anonymous »

Я пишу сборник сценариев Ansible с помощью специальной команды df -h:

Код: Выделить всё

---
- name: execute df -h
hosts: all
gather_facts: false

tasks:
- name: Execute df -h
command: df -h
register: dfh_output

- name: Output df -h
debug:
var: dfh_output.stdout
Очевидно, что выходные данные при запуске playbook, трассировка не очень красивы, удобочитаемы и, что наиболее важно, она не идентифицируется, как команда df -h idented.

Поэтому, следуя форматированию стандартного вывода в задаче отладки Ansible, я использовал stdout_callback.
Моя проблема сейчас заключается в том, что когда я перенаправляю его в файл:

Код: Выделить всё

$ ansible-playbook -i inventory.yml playbook_dfh.yml > test.log
В файле test.log распечатаны все метасимволы для идентификации:

Код: Выделить всё

TASK [Output df -h] *********************************

Код: Выделить всё

^[[0;32mok: [MYSERVER] => ^[[0m
^[[0;32m  dfh_output.stdout: |-^[[0m
^[[0;32m
Filesystem                                  Size  Used Avail Use%
^[[0;32m    devtmpfs                                    126G     0  126G   0%
^[[0;32m    tmpfs                                       126G     0  126G   0%
Я думал о sed, но каждый раз это будет раздражать. Как можно отформатировать файл так, как он предназначен для трассировки выполнения playbook?
Лучше всего было напрямую изменить код Python для ansible.plugin.callback, но я этого не делаю Я не знаю, где находится код (я пробовал /usr/bin, / и т. д. и буквально не могу его найти).

Я попробовал еще несколько вещей из обратный вызов ansible.builtin.default, но, похоже, ничего не работает.
Меня беспокоит то, что у меня могут закончиться решения, которые можно было бы реализовать с помощью Ansible/YAML. Может, это тупик? Есть идеи?

Подробнее здесь: https://stackoverflow.com/questions/791 ... irected-to
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»