J'apprends le Chef et je construis un livre de cuisine avec des recettes pour l'installation rbenv
et ruby-build
. La recette ruby-build
installe le programme, puis tente d'installer Ruby 2.3.1 avec rbenv
. Cependant, chaque fois que je cours chef-client
pour converger, cette dernière étape échoue avec l'erreur rbenv: no such command 'install'
même si l'installation de ruby-build
se termine avec succès.Chef + rbenv: "rbenv: aucune commande de ce type 'install'" malgré l'installation de ruby-build
bash "initialize rbenv and install ruby 2.3.1" do
user "david"
cwd node["user"]["home"]
environment({
"PATH" => "#{node['rbenv']['bin']}:#{node['rbenv']['root']}/shims:#{ENV['PATH']}"
})
# code "eval \"$(rbenv init -)\" && rbenv install 2.3.1"
code <<-EOF
eval "$(rbenv init -)"
rbenv install 2.3.1
EOF
end
J'ai commenté la façon d'une ligne que j'ai aussi essayé. Dans les deux cas, il est indiqué que install
est manquant bien que le programme soit présent.
En fait, je peux entrer dans la machine manuellement et exécuter ces commandes très bien:
[[email protected] ~]# su david
[[email protected] root]$ cd
[[email protected] ~]$ eval "$(.rbenv/bin/rbenv init -)"
[[email protected] ~]$ .rbenv/bin/rbenv install 2.3.1
Downloading ruby-2.3.1.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.1.tar.bz2
Toutes les idées pourquoi ce serait un échec au cours de la convergence, mais pas à la ligne de commande ??
pourrait-il avoir quelque chose à voir avec elle: http://stackoverflow.com/a/24249090/823617 – Casper
Je ne pense pas parce que je suis ne pas utiliser un rbenv global – sixty4bit