Isto parece ser um problema com a versão atual do próprio RVM (1.17.0), forçando uma versão mais antiga do RVM resolve o problema. Eu fiz isso definindo os seguintes atributos:
node['rvm']['version'] = "1.16.13"
node['rvm']['branch'] = "none"
Estou usando o livro de receitas do chef-rvm da fnichol para executar uma instalação ampla do sistema do Ruby via RVM com o rvm :: receita do sistema Ou seja Na minha lista de execução, eu tenho (sem atributos adicionais definidos):
recipe[rvm::system]
Depois de cozinhar meu servidor Ubuntu, tudo funciona bem como um usuário comum. ou seja,
$ ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]
No entanto, rvmsudo não parece preservar o ambiente RVM ou transmiti-lo corretamente para o sudo. Eu recebo o seguinte erro:
$ rvmsudo ruby -v
sudo: ruby: command not found
Como uso o chef para configurar meu ambiente para que rvmsudo tenha acesso ao ambiente ruby / gem?
Isto parece ser um problema com a versão atual do próprio RVM (1.17.0), forçando uma versão mais antiga do RVM resolve o problema. Eu fiz isso definindo os seguintes atributos:
node['rvm']['version'] = "1.16.13"
node['rvm']['branch'] = "none"
Você instalou o ruby apenas para seu usuário. Você deve usar rvm :: system_install para instalação em todo o sistema.