我得到的错误是:
Wed,06 Mar 2013 20:05:05 +0000 ERROR: Running exception handlers
Wed,06 Mar 2013 20:05:05 +0000 ERROR: Exception handlers complete
Wed,06 Mar 2013 20:05:05 +0000 DEBUG: Re-raising exception: LoadError – no such file to load — rvm
/opt/aws/opsworks/current/site-cookbooks/rvm/recipes/default.rb:29:inrequire'
from_file’
/opt/aws/opsworks/current/site-cookbooks/rvm/recipes/default.rb:29:in
提出异常的代码是:
chef_gem 'rvm' doaction :installversion '>= 1.11.3.6'endruby_block "require rvm" do block do require 'rvm' create_rvm_shell_chef_wrapper create_rvm_chef_user_environment end action :createend
收到错误后,我使用ssh登录了实例,并检查是否安装了rvm gem.我看不到在* LOCAL GEMS *下列出的rvm.
然后我用gem_package替换了方法chef_gem,但仍然遇到了同样的错误.但是这次我检查了宝石列表rvm被列出了.
有帮助吗?提前致谢.
解决方法 这里突出显示的问题是: https://forums.aws.amazon.com/thread.jspa?threadID=118646OpsWorks的主厨实施受亚马逊的限制.当chef在节点上运行时,它实际上是通过bundle运行的.由于rvm cookbook正在将新的gem(rvm)安装到系统中并且正在尝试使用它,因此它失败了,因为rvm gem还不是bundle的一部分(在Gemfile中列出).
在撰写本文时,目前的解决方法是opsworks已经实现了一种方法来支持自定义gem的使用.
我已经能够更新你提到的行:
if defined?(OpsWorks) && defined?(OpsWorks::InternalGems) OpsWorks::InternalGems.internal_gem_package('rvm',:version => node['rvm']['chef_internal_rvm_gem_version'])else chef_gem 'rvm' do action :install version '>= 1.11.3.6' endend
如果这对您有用,请告诉我!
总结以上是内存溢出为你收集整理的ruby – 亚马逊OpsWorks定制食谱RVM全部内容,希望文章能够帮你解决ruby – 亚马逊OpsWorks定制食谱RVM所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)