6
Câu hỏi ngu ngốc nhưng chúng tôi đã có công thức Capistrano bị hỏng và tôi muốn xác minh rằng chúng tôi không sử dụng after
& before
không chính xác?Nơi đặt "trước" và "sau" trong công thức Capistrano?
Thực hiện những việc này trước & sau khi các tác vụ thuộc về w/trong khối không gian tên :deploy
hoặc bên ngoài không? Tôi thấy các ví dụ về cả hai here.
Đây là một đoạn trích từ deploy.rb có vấn đề:
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