我有一个非常简单的任务称为update_feeds:如何使用Capistrano在服务器上执行命令?
desc "Update feeds"
task :update_feeds do
run "cd #{release_path}"
run "script/console production"
run "FeedEntry.update_all"
end
每当我试着运行这个任务,我得到以下信息:
[out :: mysite.com] sh: script/console: No such file or directory
我想这是因为我在正确的目录是不,但试图
run "cd ~/user/mysite.com/current"
代替
run "cd #{release_path}"
也失败。手动运行完全相同的命令(通过ssh)完美地工作。 为什么不能正确地将capistrano cd
(更改目录)放到站点目录下来运行命令?
谢谢!
更新:选择了一个答案,非常感谢你对所有谁回答。 最好的答案实际上可能是one on server fault,尽管两者的要点(服务器故障和堆栈溢出故障)都是相同的。