Bundler没有加载正确的Gemfile

时间:2011-03-05 20:06:55

标签: gem bundler

我正在安装一个Ruby CI服务器,它从Github中拉出我的Rails git repos并用Bundler安装gem。 CI服务器有一个自己的Gemfile(因为它也是一个Rails应用程序)。到目前为止一切都很好。

现在,我首先在新的git pull之后运行一个bundle install,这很好用:

bundle install --gemfile=[..]/build_13/Gemfile --deployment

接下来,我列出已安装的gem并运行rake(运行测试套件):

bundle list
bundle exec rake

这就是它的目标。最后2个命令加载CI服务器的Gemfile,这与几秒钟前安装的不同。这个Gemfile位于我想要运行的那个父目录中,所以我想它首先找到“父”Gemfile并忘记寻找正确的Gemfile。

我知道如何告诉捆绑商使用正确的宝石吗?

1 个答案:

答案 0 :(得分:4)

知道了!

您可以将Gemfile路径指定为环境变量:

export BUNDLE_GEMFILE=[..]/build_13/Gemfile

这将迫使Bundler使用正确的Gemfile。感谢Philippe Creux'article指出我正确的方向。

供将来参考:

我正在使用BigTuna作为我的CI服务器,您需要为每个“步骤”添加上述语句,以使其正常工作。