我的項目有一個多步驟的管道,包括爬行,NLP等一些步驟,但我只是將它們稱爲Step1,Step2等。此外,我希望能夠部署到不同的環境(dev,prod等)。只爲某些角色運行Capistrano任務
我想我將使用Capistrano的多級組件來部署到不同的環境(例如cap dev deploy vs cap prod deploy)。
對於每個管道步驟使用角色似乎也很直觀。但是,每個步驟都獨立於其餘管道運行,因此每個步驟都可以獨立於其他步驟重新啓動/部署。似乎Capistrano不明確支持僅針對特定角色的運行任務。什麼是這樣做的好方法?
做這個專門爲每個角色定義任務的最佳方法是?如果角色之間存在一些共同的任務會怎麼樣?也許輔助方法是那裏的答案?
不完全是我在找什麼。舉例來說,如果我有一個任務,如: ' 任務:clear_logs做 運行「RM -f /tmp/blah.log」 結束 ' 作爲部署的一部分,我想上運行我所有機器,如果我在我的管道中部署所有步驟。但是如果我只部署管道的Step2,我只想清除所有具有Step2角色的機器上的日誌。 我遇到的角色問題在於他們擅長指定要在哪些計算機上運行任務,但您似乎無法指定是否實際運行它們或不運行特定部署。 – JZC