我在我的食谱中加入了rvm --create --ruby-version ruby-2.3.3@storesview
来创建一个gemset。运行 kitchen converge 不会导致 .ruby-gemset 和 .ruby-version 的创建。但是当我直接在VM终端上运行rvm --create --ruby-version ruby-2.3.3@storesview
时,文件就会被创建。可能是什么原因?谢谢。
这是我的bash代码的样子:
bash "somename" do
user 'root'
cwd "/var/www/html/APIStoresView/"
code <<-EOH
rvm --create --ruby-version ruby-2.3.3@storesview
EOH
end
答案 0 :(得分:1)
一般情况下,不建议在服务器上使用rvm,而且最好在最好的时候使用Chef + rvm。更具体地说,appbundler(由Chef用来创建边缘防弹的二进制存根)设置了许多可能混淆rvm的环境变量。
如果您需要某个项目的特定版本的Ruby,我强烈建议您使用poise-ruby
+ poise-ruby-build
和Bundler而不是rvm和gemsets。