Мне нужно запустить некоторые роли из командной строки для тестирования, а иногда мне нужно применить некоторые специальные задачи. Поэтому я использую ansible
для запуска роли. Например:
$ ansible all -i 192.168.1.123, -m include_role -a"name=myrole" -e '@role.json'
Это работает отлично и выводит много информации, но не выводит -name:
текст задачи. Я имею в виду текст, который обычно выводится ansible-playbook
так:
TASK [Do this and that...]
Но ansible
не печатает это. Без этой информации иногда трудно сказать, где именно находится ansible. Если задача не удалась, трудно понять, какая задача не удалась...
Есть ли способ запускать роли в режиме ad hoc и при этом получать больше информации о том, какая именно задача выполняется?
решение1
Нет, скрипт adhoc ansible не может это вывести. Обходной путь — создание простого плейбука:
---
- hosts: "{{ myhost }}"
tasks:
- import_role:
name: "{{ myrole }}"
Бежать с:
ansible-playbook /path/roletest.yml -e 'myrole=coolrole myhost=awesomehost' -e '@role.json'