2014-06-20 51 views

回答

0

卡皮斯特拉諾本身呢? :)

您可以添加任務運行之前或在您的deploy.rb文件部署後

namespace :deploy do 

    desc "Do something before deploy." 
    task :my_awesome_predeploy_task do 
    # do stuff here... 
    end 

    desc "Do something after deploy." 
    task :my_awesome_postdeploy_task do 
    # do stuff here... 
    end 

end 

namespace :deploy do 
    before :deploy, "deploy:my_awesome_predeploy_task" 
    after :deploy, "deploy:my_awesome_postdeploy_task" 
end 
+0

但我不希望運行同一任務的每個部署,這個想法是運行diferent,增量,每次腳本。在我的情況下,對elasticsearch索引進行更改。但可能有很多用例。 –

+0

你可以模仿什麼是遷移,時間戳你的'遷移'腳本,以及什麼時候運行將時間戳存儲在數據庫中。然後,部署前/部署腳本應該檢查數據庫中的最新時間戳並運行具有較晚時間戳的所有腳本。 – kreek