0

我正在使用 capistrano 部署到服务器并执行 bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile 作为最后一步。问题是当它从 cap deploy 到达这一点时,我收到以下错误:

/usr/local/rvm/gems/ruby-1.9.3-p194/gems/bundler-1.1.4/lib/bundler/spec_set.rb:90:in `block in materialize': 找不到 Platform-0.4.0在任何来源 (Bundler::GemNotFound)

Platform-0.4.0 实际上是在服务器上。当我进入服务器并运行这个确切的命令时,一切都很好。

关于我的服务器的几个事实:它使用 RVM,但这似乎不是 cap 的问题,正如上面的堆栈跟踪所暗示的那样。另一个有趣的事实是,该服务器首先是使用我编写的自定义脚本创建的,该脚本下载 git 存储库的存档版本,然后手动运行 cap 在部署时执行的操作。如果有人问,我这样做的原因是为了使用 AWS AutoScaling 实现自动化。如果我做一个正常的部署:设置(不使用我的 AWS 脚本),它适用于部署。但是 gem 列表是相同的,并且该站点的工作方式都相同。它只是帽子部署的东西

有什么想法吗?

4

1 回答 1

0

我弄清楚我做错了什么。在我的自定义 AMI 脚本中,我将初始发布文件夹命名为“first”,而它应该是 capistrano 通常命名的时间戳。这在随后的部署中搞砸了。

于 2012-06-21T00:00:38.997 回答