9

这真让我抓狂。我在 Gemfile 中添加了一个 gem (hirb),现在我无法部署。

是的,我用过bundle install --path vendor/cache

是的,我用过bundle package

是的,我提交了 Gemfile 和 Gemfile.lock

我删除了生产机器中的 vendor/cache 文件夹,所以它会再次生成它而不是更新它。这是错的吗?

每当我跑步时,cap:deploy我都会得到以下...

executing "cd /var/www/releases/20120606002321 && bundle install --gemfile /var/www/releases/20120606002321/Gemfile --path /var/www/shared/bundle --deployment --quiet --without development test"
    servers: ["11.111.11.11"]
    [11.111.11.11] executing command
    [11.111.11.11] env PATH=/var/lib/gems/1.9.1/bin:$PATH sh -c 'cd /var/www/releases/20120606002321 && bundle install --gemfile /var/www/releases/20120606002321/Gemfile --path /var/www/shared/bundle --deployment --quiet --without development test'
 ** [out :: 11.111.11.11] Some gems seem to be missing from your vendor/cache directory.
 ** [out :: 11.111.11.11] Could not find multi_json-1.3.6 in any of the sources
    command finished in 48571ms
*** [deploy:update_code] rolling back
  * executing "rm -rf /var/www/releases/20120606002321; true"
    servers: ["11.111.11.11"]
    [11.111.11.11] executing command
    [11.111.11.11] env PATH=/var/lib/gems/1.9.1/bin:$PATH sh -c 'rm -rf /var/www/releases/20120606002321; true'
    command finished in 6417ms
failed: "env PATH=/var/lib/gems/1.9.1/bin:$PATH sh -c 'cd /var/www/releases/20120606002321 && bundle install --gemfile /var/www/releases/20120606002321/Gemfile --path /var/www/shared/bundle --deployment --quiet --without development test'" on 11.111.11.11
4

3 回答 3

9

您可能想尝试删除--deployment标志。这似乎允许 Bundler 从vendor/cache源代码Rubygems 安装。

帽文件:

set :bundle_flags, "--quiet --no-cache"

一个相关的错误:https ://github.com/bundler/bundler/issues/1454

于 2013-05-25T20:17:57.123 回答
1

尝试,

bundle install --no-deployment

这消除了--deployment阻止您尝试更新的“捆绑冻结”。您可以通过BUNDLE_FROZEN.bundle/config

于 2018-10-22T21:16:23.907 回答
0

@leonel,您可以检查几件事:

  1. 看看你是否有正确的来源来获取宝石(来源“http://rubygems.org”)
  2. 尝试做一个 gem install multi_json
  3. 查看您的 Web 服务器的日志文件。在这种情况下,当您使用普通武器无法击中目标时,它们会很有帮助。

稍后您应该检查您是否有旧版本,然后尝试使用 gem 更新到所需(或最新)版本的 multi_json。

希望有帮助,R

于 2012-07-31T05:40:23.380 回答