我正在尝试部署一个以前成功运行的 Rails 应用程序,但 Capistrano 在部署过程中遇到了麻烦。除了更改 Rails 应用程序代码本身和更新一些 gem(即 deploy.rb 文件与曾经工作的设置相同)之外,我认为我没有更改任何其他内容。
这是它似乎失败的行:
executing "cp -- /u/apps/myapp/shared/assets/manifest.yml /u/apps/myapp/releases/unable/assets_manifest.yml"
注意它试图复制到的目录是如何被调用的unable
。好像它无法获得新的发布名称/日期或其他什么?而更早的时候它执行这个没有错误:
executing "cd -- /u/apps/myapp/releases/20130507041223 && bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile"
有趣的输出的其余部分是这样的:
** cp: cannot create regular file `/u/apps/myapp/releases/unable/assets_manifest.yml'
** No such file or directory
failed: "rvm_path=$HOME/.rvm/ $HOME/.rvm/bin/rvm-shell 'default' -c 'cp -- /u/apps/myapp/shared/assets/manifest.yml /u/apps/myapp/releases/unable/assets_manifest.yml'"
更新:这似乎是 Capistrano 2.15.4 中的一个错误。降级到版本 2.14.2 解决了这个问题。我在这里详细说明了这个错误: