0
我有一個Ansible playbook的問題,尤其是它的一個任務。這項任務看起來是這樣的:Ansible - 如何'循環'一個可靠的任務,如果它失敗?
- name: Start Integration Server
script: "{{ instDir_path }}start_All.sh"
- name: Wait for Integration Server to start
wait_for:
port: 5515
delay: 10
它所做的是運行start_All.sh
,這是實際啓動兩臺服務器一個簡單的腳本。第一臺服務器每次都能快速而準確地啓動。第二個問題有時會在300秒的默認延遲wait_for
內啓動。我不希望更改默認值,而是想要這樣:
如果服務器啓動 - 完成並轉到下一個劇本 如果服務器失敗開始 - 運行stop_All.sh
關閉第一臺服務器正確,然後再次運行start_All.sh
並再次重複wait_for
過程,直到服務器正確啓動。或者可能不會一次又一次 - 但它必須嘗試啓動服務器至少3次。
Ansible甚至可能嗎? This
Ansible的意思是儘可能的聲明。爲什麼不在start_All.sh中實施所有這些柺杖? –