2011-03-05 55 views
3

我正在安装一个Ruby CI服务器,它正在从Github中拉出我的Rails git repos并安装了Bundler的gem。 CI服务器本身有一个Gemfile(因为它也是一个Rails应用程序)。到现在为止还挺好。现在Bundler未加载正确的Gemfile

,我首先运行捆绑安装新的git拉之后,这工作得很好:

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

接下来,我列出已安装的宝石和运行耙(运行测试套件):

bundle list 
bundle exec rake 

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

任何想法如何告诉打包商使用正确的宝石?

+0

'./。bundle/config'的内容是什么? – 2011-03-05 20:10:21

+0

我的'./。bundle/config'文件的内容,这有帮助吗? --- BUNDLE_FROZEN:“1” BUNDLE_DISABLE_SHARED_GEMS:“1” BUNDLE_PATH:[..]/bundle – Cimm 2011-03-05 20:19:16

回答

3

Got it!

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

export BUNDLE_GEMFILE=[..]/build_13/Gemfile 

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

以供将来参考:

我用BigTuna作为我的CI服务器,您将需要添加上述为每个“步骤”,使其工作的声明。