Ansible僅在開始時纔會獲得事實。但我需要檢查每個命令的事實。 例如:如何在Ansible的每個命令中獲得事實
我需要創建一個目錄,之後,我需要把文件放到這個目錄。但是,在開始時會出現無法得到的事實'dir',創建目錄並且在下一步事實上仍然是FALSE和無法跳過此步驟=(並且僅在第二次運行後才執行此步驟。
我會嘗試setup
。步驟再次收集事實,但它不工作
我不喜歡這樣寫道:
- stat: path=/etc/zabbix/scripts/rabbitmq
register: rmqscriptdir
- name: Create scripts dir if not exist
when: rmqscriptdir.stat.exists == False
shell: mkdir /etc/zabbix/scripts/rabbitmq
- name: Gathering facts again
setup:
- name: Set owner and permissions to rabbitmq directory
when: rmqscriptdir.stat.exists == True
file: path=/etc/zabbix/scripts/rabbitmq owner=zabbix group=root mode=0750
- stat: path=/etc/zabbix/scripts/rabbitmq/api.py
register: rmqscript_api
- name: Create api.py if not exist
when: rmqscript_api.stat.exists == False and rmqscriptdir.stat.exists == True
shell: cd /etc/zabbix/scripts/rabbitmq; wget https://raw.githubusercontent.com/jasonmcintosh/rabbitmq-zabbix/master/scripts/rabbitmq/api.py
- name: Gathering facts again
setup:
- name: Set owner and permissions to api.py
when: rmqscript_api.stat.exists == True
file: path=/etc/zabbix/scripts/rabbitmq/api.py owner=zabbix group=root mode=0755
感謝您的回答。在我使用puppet之前,它會隨機運行一個任務,並希望檢查每個命令的所有依賴關係。我可以註冊統計到以前註冊的變量嗎? – ITJunkie
您可以覆蓋以前註冊的變量。你是這個意思嗎? – udondan
是的,謝謝。 – ITJunkie