私は Vagrant で puppet を使用していますが、rbenv を使用して Ruby インストールをセットアップする際にいくつか問題があります。
Ruby は正常にインストールされています (私はプラグインを使用しています: https://forge.puppetlabs.com/jdowning/rbenvを使用してruby + gems をインストールします:
rbenv::plugin { 'sstephenson/ruby-build': } ->
rbenv::build { '1.9.3-p392': global => true } ->
rbenv::gem { 'bundler': ruby_version => '1.9.3-p392' } ->
ただし、これを実行した後、Puppet は rbenvs shim フォルダーの下に bundler コマンドを見つけることができません。rbenv rehash イベントを確認できます。プラグインのマニフェストを調べると、実行後や gem のインストール後にバイナリを再ハッシュする必要があることがわかります。
マシンに ssh すると、「どのバンドラー」がバイナリへのパスを見つけます。同様に、パペット スクリプトを再実行すると正しく機能し、すべて正常にインストールされます。
現時点では、次のコマンドを使用しています。
exec { "bundle install":
user => $app_user,
group => $app_group,
command => "bundle install",
path => [ '/bin/', '/sbin/', '/usr/bin/', '/usr/sbin/', "/home/${app_user}/.rbenv/bin/", "/home/${app_user}/.rbenv/shims/" ],
cwd => $app_root,
} ->
私が知っている道はやり過ぎです。
次に試すことができるアイデアはありますか?私はアイデアがありません。