0

Rails アプリケーションを実行したい仮想マシンがあります。Vagrant を使用して実行し、Puppet をプロビジョニング ツールとして使用します。

bundle installVM の準備が整うように、プロビジョニング中に実行したいと考えています。私はこれを使用します:

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

1 つを除くすべての gem がインストールされます。問題はember-rails、Gemfile で指定された GitHub リポジトリを持つ唯一のものである にあります。

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

これはパペットの問題だと思います。VM に ssh してbundle install手動で実行すると、gem がダウンロードされて使用されます。Vagrant を介してプロビジョニングを実行すると、Puppet は次のメッセージをログに記録しますが、gem が見つからないようです:

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

1つの違いに気づきました。手動で実行するとbundle install、Bundler は次のようにログに記録します。

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

ただし、Puppet ログにはそのようなメッセージはありません。何が問題なのですか?

4

1 に答える 1

0

git リポジトリからインストールされた Gem は、Bundler にのみ表示され、 には表示されませんgem list。これは正常であり、問​​題を示すものではありません。アプリの実際の実行に問題はありますか?

于 2013-10-07T11:01:32.143 に答える