6
愚蠢的問題,但我們有一個破碎的Capistrano食譜,我想驗證我們沒有錯誤地使用after
& before
?哪裏可以在Capistrano食譜中的「之前」和「之後」?
& &之前在:deploy
名稱空間塊或其外部所屬的位置執行這些操作嗎?我看到兩個here的例子。
這是有問題的deploy.rb的摘錄:
namespace :deploy do
task :start do ; end
task :stop do ; end
task :restart, :roles => :app, :except => { :no_release => true } do
run "#{try_sudo} touch #{File.join(current_path,'tmp','restart.txt')}"
end
# copy database.yml into project
task :copy_database_config do
production_db_config = "/Library/RoRconfig/#{application}.yml"
run "cp #{production_db_config} #{current_release}/config/database.yml"
`puts "replaced database.yml with live copy"`
end
task :pipeline_precompile do
run "cd #{release_path}; RAILS_ENV=production rake assets:precompile"
end
after "deploy:update_code", "deploy:pipeline_precompile" ### <---
before "deploy:finalize_update", "deploy:copy_database_config" ### <---
end