2017-03-07 28 views
-1

如何在整個遊戲中調用處理程序myhandler.yml,而不僅僅是一個任務?Ansible,如何在整個遊戲中調用處理程序,而不僅僅是一個任務

role 
    --handlers 
    ----myhandler.yml 
    --tasks 
    ----mytasks.yml 

我有具體的要求,我不能使用模塊進行服務處理,因爲我的應用程序在nonroot帳戶下運行。

我有部署任務 - > mytasks.yml的任務,但我想觸發handler-> myhandler.yml的通知處理程序。

有在mytasks.yml很多nonstandart任務:例如異步調用,檢查口,檢查PID,檢查進程。

可以運行這個處理程序作爲整個遊戲通知?

編輯: 或者我應該把myhandler.yml的任務,並把它通過@include?

回答

-1

是的..通知可以用來這樣做。 不需要包含處理程序文件。

在任何任務通知提到像你這樣有名稱爲「重新啓動Tomcat」,那麼任何任務tomcat的重啓處理程序需要重新啓動Tomcat的應該有通知。

- name: Modify server.xml 
    copy: 
    src: a.txt 
    dest: server.xml 
    notify: restart tomcat 

這會在劇本結束時自動調用處理程序。

-1

如果你想設置在任務結束時運行的處理程序,無論任務的結果,包括在任務:

meta: flush_handlers 
相關問題