我需要從命令列運行一些角色進行測試,有時我需要應用一些臨時任務。所以我用來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 到底在哪裡。如果一個任務失敗了,很難找出哪個任務失敗了...
有沒有一種方法可以以臨時方式運行角色,並且還可以獲得有關正在運行的任務的更多資訊?
答案1
不,adhoc ansible 腳本無法列印該內容。解決方法是創建一個簡單的劇本:
---
- hosts: "{{ myhost }}"
tasks:
- import_role:
name: "{{ myrole }}"
運行:
ansible-playbook /path/roletest.yml -e 'myrole=coolrole myhost=awesomehost' -e '@role.json'