Ich muss zum Testen einige Rollen von der Befehlszeile aus ausführen und manchmal muss ich einige Ad-hoc-Aufgaben ausführen. Daher ansible
führe ich die Rolle aus. Beispiel:
$ ansible all -i 192.168.1.123, -m include_role -a"name=myrole" -e '@role.json'
Das funktioniert gut und druckt viele Informationen aus, aber es druckt keinen Aufgabentext aus -name:
. Was ich meine, ist der Text, der normalerweise so ausgedruckt wird ansible-playbook
:
TASK [Do this and that...]
Aber ansible
es wird nicht gedruckt. Ohne diese Informationen ist es manchmal schwierig zu sagen, wo genau Ansible ist. Wenn eine Aufgabe fehlschlägt, ist es schwierig herauszufinden, welche Aufgabe fehlgeschlagen ist ...
Gibt es eine Möglichkeit, Rollen ad hoc auszuführen und dabei auch mehr Informationen darüber zu erhalten, welche Aufgabe genau ausgeführt wird?
Antwort1
Nein, das Ad-hoc-Ansible-Skript kann das nicht drucken. Die Problemumgehung besteht darin, ein einfaches Playbook zu erstellen:
---
- hosts: "{{ myhost }}"
tasks:
- import_role:
name: "{{ myrole }}"
Ausführen mit:
ansible-playbook /path/roletest.yml -e 'myrole=coolrole myhost=awesomehost' -e '@role.json'