乘客没有这样的文件加载配置/环境

时间:2013-04-09 03:17:39

标签: ruby-on-rails ruby-on-rails-3 capistrano passenger

我昨晚尝试对我的旧应用程序(Rails 3.0.0,Ruby 1.8.7)进行一些简单的更改,并在部署时遇到了许多问题。我正在使用Moonshine来处理部署。

我可以毫无错误地运行cap deploy,但随后我收到以下乘客错误

no such file to load -- /srv/BBRatboard/releases/20130409025824/config/environment

我不确定它是否相关,但是当我进入框中时,/srv/BBRatboard/current/config下的整个配置文件夹都是空的。这是设计还是我的部署出了问题?

许多人已经能够通过调整environment.rb文件(https://www.sit.auckland.ac.nz/Ruby_on_Rails_deployment)的权限来解决这个问题,但我甚至无法在我的生产服务器上看到它。

我可以提供任何必要的详细信息,任何帮助都会非常感激,因为该应用目前处于破碎状态。

非常感谢。

2 个答案:

答案 0 :(得分:0)

您肯定需要在config目录中显示文件。看起来您的cap deploy输出显示它正在删除版本的config目录:

  

执行“chmod -R - g + w / srv / BBRatboard / releases / 20130409032459&& rm -rf - / srv / BBRatboard / releases / 20130409032459 / system&& ln -s - / srv / BBRatboard / shared / system / srv / BBRatboard / releases / 20130409032459 / system&& rm -rf - / srv / BBRatboard / releases / 20130409032459 / log&& ln -s - / srv / BBRatboard / shared / log / srv / BBRatboard / releases / 20130409032459 / log&& rm -rf - / srv / BBRatboard / releases / 20130409032459 / pids&& ln -s - / srv / BBRatboard / shared / pids / srv / BBRatboard / releases / 20130409032459 / pids&& rm -rf - / srv / BBRatboard / releases / 20130409032459 / config&& ln -s - / srv / BBRatboard / shared / config / srv / BBRatboard /释放/ 20130409032459 /配置“

(看最后,rm -ff -- /srv/BBRatboard/releases/20130409032459/config)。虽然它也试图将config目录符号链接到shared/config目录(ln -s -- /srv/BBRatboard/shared/config /srv/BBRatboard/releases/20130409032459/config

我猜测shared/config目录是在cap deploy:setup期间创建的(基于Moonshine docs建议在cap deploy之前运行它)。我会确保您事先运行cap deploy:setup任务,并检查您的shared/config目录是否包含其声称缺少的environment.rb文件等内容。

答案 1 :(得分:0)

经过一番挖掘后,看起来这是一个不同版本的capistrano / moonshine以及他们处理共享资产的方式的问题。

我在https://github.com/railsmachine/moonshine/wiki/Moonshine.yml-files-not-being-loaded-or-configuration-object-appears-empty

上提出了建议

即用tmp替换config,它现在似乎有效!