我正在尝试使用vlad the deployer来部署rails应用程序。
我正在使用nginx和乘客。
vlad:start_app任务有问题。
当我部署时,我得到以下问题
touch: cannot touch `/var/www/mysite.com/releases/20100623130302/tmp/restart.txt': No such file or directory
rake aborted!
execution failed with status 1: ssh mysite.com touch /var/www/mysite.com/releases/20100623130302/tmp/restart.txt
问题很明显,因为版本中的20100623130302不存在。
我宁愿使用以下任务,但不能通过将其放在我的config / deploy.rb文件中来覆盖默认的vlad:start_app任务。
namespace :vlad do
desc 'Restart Passenger'
remote_task :start_app do
run "touch #{current_path}/tmp/restart.txt"
end
end
任何帮助表示赞赏。我可以选择让默认的vlad任务工作,或者某种方式来覆盖默认的vlad任务。
答案 0 :(得分:0)
RAILS_ROOT/Rakefile
是文件。
答案 1 :(得分:0)
要覆盖任务,您必须先删除前一个任务,因为再次定义相同的任务只会创建第二个任务,该任务将在第一个任务之后运行。
以下是vlad website如何替换任务的示例:
namespace :vlad do
# Clear existing update task so that we can redefine instead of adding to it.
Rake.clear_tasks('vlad:update')
remote_task :update, :roles => :app do
#custom update stuff
end
end