Puppet - Bundler不会从GitHub安装gem

时间:2013-10-06 16:59:03

标签: github rubygems bundler vagrant puppet

我有一个虚拟机,我想运行Rails应用程序。我使用Vagrant来运行它,将Puppet作为配置工具。

我想在配置期间运行bundle install,以便VM准备就绪。我用这个:

exec { 'bundle install':
  command => 'bundle install',
  cwd => '/vagrant/',
  logoutput => true,
}

所有宝石都安装了。问题出在ember-rails,这是唯一一个在Gemfile中指定GitHub repo的人:

gem 'ember-rails', github: 'emberjs/ember-rails'

我认为这一定是Puppet问题。当我进入VM并手动运行bundle install时,将下载并使用gem。当通过Vagrant运行配置时,Puppet会记录此消息,但宝石似乎丢失了:

/Stage[main]/Bundler/Exec[bundle install]/returns: Using ember-rails (0.9.2) from git://github.com/emberjs/ember-rails.git (at master)

我注意到了一个区别。当我手动运行bundle install时,Bundler会记录下来:

Fetching git://github.com/emberjs/ember-rails.git

但是,Puppet日志中没有此类消息。任何想法可能是什么问题?

1 个答案:

答案 0 :(得分:0)

从git repos安装的Gems仅对Bundler可见,不会出现在gem list中。这是正常现象,并不表示存在问题。实际运行你的应用程序有问题吗?