2013-06-03 27 views
5

Hey tất cả tôi đang cố gắng để xây dựng một vm vagrant. tôi đang sử dụng đầu bếp-solo để cung cấp và chef-rbenv để quản lý các phiên bản của tôi. như vậy trong vagrantfile tôi chỉ địnhVagrant sử dụng Ruby 1.9.3 như mặc định

config.vm.provision :chef_solo do |chef| 
    chef.cookbooks_path = "cookbooks" 
    chef.add_recipe "ruby_build" 
    chef.add_recipe "rbenv::system" 
    chef.add_recipe "rbenv::vagrant" 
    ... 

    chef.json = { 
    "rbenv" => { 
     "rubies" => [ "1.9.3-p327" ], 
     "global" => "1.9.3-p327", 
     "gems" => { 
     "1.9.3-p327" => [ 
     { "name" => "bundler" } 
     ] 
     } 
    } 
    } 
end 

để các phiên bản ruby ​​mặc định sẽ là 1.9.3-p327, nhưng nó bị treo

Error executing action `install` on resource 'rbenv_ruby[1.9.3-p327] (system)' 

và nếu tôi không xác định phiên bản trong file lang thang (như nhìn thấy ở trên), và đi với rbenv mặc định mà đầu bếp xây dựng để tôi có thể cài đặt nó một lần tôi đang ở trong vm. sau đó tôi có được điều này

[email protected]:/vagrant$ rbenv install 1.9.3-p327 
Downloading yaml-0.1.4.tar.gz... 
-> http://dqw8nmjcqpjn7.cloudfront.net/36c852831d02cf90508c29852361d01b 
Installing yaml-0.1.4... 

BUILD FAILED 
... 

nó hoạt động khi tôi chạy sudo rbenv install 1.9.3-p327 nhưng sau đó khi chạy bất cứ điều gì tôi có tiền tố nó với sudo thậm chí ruby -v

[email protected]:~$ ruby -v 
ruby 1.8.7 (2012-02-08 patchlevel 358) [x86_64-linux] 
[email protected]:~$ sudo ruby -v 
ruby 1.9.3p327 (2012-11-10 revision 37606) [x86_64-darwin12.3.0] 

làm thế nào tôi có thể làm cho nó được cài đặt với đầu bếp-solo. tôi đã thử cả tuần và không thể làm cho nó hoạt động cả.

Trả lời

4

Json yêu cầu bạn chỉ định cho đầu bếp vị trí rbenv mà bạn cài đặt ruby. kể từ khi công thức nấu ăn gọi rằng bạn cài đặt rbenv trên một mức độ hệ thống và sau đó một người dùng lvl trong trường hợp này lang thang.

chef.add_recipe "rbenv::system" 
chef.add_recipe "rbenv::vagrant" 

Vì vậy, tôi đã đi và thay đổi json này:

chef.json = { 
    'rbenv' => { 
    'user_installs' => [ 
     { 
     'user' => 'vagrant', 
     'rubies' => ['1.9.3-p327'], 
     'global' => '1.9.3-p327', 
     'gems' => { 
      '1.9.3-p327' => [ 
      { 'name' => 'bundler' }, 
      { 'name' => 'rake' } 
      ] 
     } 
     } 
    ] 
    } 
} 

Ngoài ra rbenv sách dạy nấu ăn hiện nay thường có lỗi quá tốt của nó để tham khảo các phiên bản mới nhất của taged sách dạy nấu ăn trong cheffile.

cookbook 'rbenv', git: 'git://github.com/fnichol/chef-rbenv.git', ref: "v0.7.2" 

như vậy.

Các vấn đề liên quan