Как посмотреть стандартный вывод для команд ansible-playbook? -v показывает только отчетливый вывод, а не отдельные команды. Было бы здорово, если бы я мог понять, как это сделать немедленно, поэтому, если что-то не получается или зависает, я понимаю, почему.
например
- name: print to stdout
action: command echo "hello"
будет печатать
TASK: [print variable] ********************************************************
hello
Ответы:
Я думаю, что вы можете зарегистрировать результат в переменной, а затем распечатать с отладкой.
источник
- debug: var=hello
. Иногда это более полезно для многострочного вывода или вывода модуля Ansible (а не дляcommand
/shell
output).shell: java -version 2>&1
register
модуль или что бы то ни было не производит объекты с установленной переменнойstdout
илиstderr
.... так что очень плохо, что мы не просто получаем вывод по умолчанию: |Вместо stdout я бы предложил использовать stdout_lines . Для многострочного вывода это намного лучше, например
дает
Что касается вывода в реальном времени для целей отладки, то здесь есть закрытый отчет об ошибках https://github.com/ansible/ansible/issues/3887#issuecomment-54672569, в котором обсуждаются причины, по которым это невозможно и не будет реализовано.
источник
Я обнаружил, что использование минимального
stdout_callback
с ansible-playbook дало результат, аналогичный использованию ad-hoc ansible.В вашем ansible.cfg (обратите внимание, что я на OS X, поэтому измените
callback_plugins
путь в соответствии с вашей установкой)Так что такая задача, как эта
Дает вывод, как это, как бы специальная команда
Я использую ansible-playbook 2.2.1.0
источник