2012-07-10 34 views
5

Tôi có một máy ảo được chế tạo với âm thanh và đầu bếp. Đêm qua máy tính của tôi khởi động lại bất ngờ trong khi máy ảo đã hoạt động. Sau đó, khi tôi cố gắng lang thang máy ảo tôi nhận được: Đầu bếp chưa bao giờ hoàn thành thành công! Bất kỳ lỗi nào sẽ hiển thị trong đầu ra ở trên. Vui lòng sửa công thức nấu ăn của bạn để chúng hoàn thành đúng cách.vagrant up issue

[default] VM already created. Booting if it's not already running... 
[default] Clearing any previously set forwarded ports... 
[default] Forwarding ports... 
[default] -- 22 => 2222 (adapter 1) 
[default] Creating shared folders metadata... 
[default] Clearing any previously set network interfaces... 
[default] Preparing network interfaces based on configuration... 
[default] Running any VM customizations... 
[default] Booting VM... 
[default] Waiting for VM to boot. This can take a few minutes. 
[default] VM booted and ready for use! 
[default] Configuring and enabling network interfaces... 
[default] Mounting shared folders... 
[default] -- v-root: /vagrant 
[default] -- v-data: /vagrant 
[default] -- v-csr-2: /tmp/vagrant-chef-1/chef-solo-2/roles 
[default] -- v-csc-1: /tmp/vagrant-chef-1/chef-solo-1/cookbooks 
[default] Running provisioner: Vagrant::Provisioners::ChefSolo... 
[default] Generating chef JSON and uploading... 
[default] Running chef-solo... 
stdin: is not a tty 
[Tue, 10 Jul 2012 00:59:36 -0700] INFO: *** Chef 0.10.2 *** 
[Tue, 10 Jul 2012 00:59:36 -0700] INFO: Setting the run_list to ["role[my-site]"] from JSON 
[Tue, 10 Jul 2012 00:59:36 -0700] INFO: Run List is [role[my-site]] 
[Tue, 10 Jul 2012 00:59:36 -0700] INFO: Run List expands to [memcached, my-site, my-site::vm] 
[Tue, 10 Jul 2012 00:59:36 -0700] INFO: Starting Chef Run for lucid32 
[Tue, 10 Jul 2012 00:59:37 -0700] ERROR: Running exception handlers 
[Tue, 10 Jul 2012 00:59:37 -0700] ERROR: Exception handlers complete 
[Tue, 10 Jul 2012 00:59:37 -0700] FATAL: Stacktrace dumped to /tmp/vagrant-chef-1/chef-stacktrace.out 
[Tue, 10 Jul 2012 00:59:37 -0700] FATAL: NoMethodError: undefined method `[]' for nil:NilClass 
Chef never successfully completed! Any errors should be visible in the 
output above. Please fix your recipes so that they properly complete. 

Sau đó chỉnh sửa:

stacktrace đổ vào /tmp/vagrant-chef-1/chef-stacktrace.out

Generated at Tue Jul 10 00:59:37 -0700 2012 
NoMethodError: undefined method `[]' for nil:NilClass 
/tmp/vagrant-chef-1/chef-solo-1/cookbooks/my-site/recipes/default.rb:114:in `from_file' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/mixin/recipe_definition_dsl_core.rb:69:in `instance_eval' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/mixin/recipe_definition_dsl_core.rb:69:in `method_missing' 
/tmp/vagrant-chef-1/chef-solo-1/cookbooks/my-site/recipes/default.rb:109:in `from_file' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/cookbook_version.rb:578:in `load_recipe' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/mixin/language_include_recipe.rb:40:in `include_recipe' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/mixin/language_include_recipe.rb:27:in `each' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/mixin/language_include_recipe.rb:27:in `include_recipe' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/run_context.rb:72:in `load' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/run_context.rb:69:in `each' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/run_context.rb:69:in `load' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/client.rb:195:in `setup_run_context' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/client.rb:159:in `run' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/application/solo.rb:192:in `run_application' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/application/solo.rb:183:in `loop' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/application/solo.rb:183:in `run_application' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/../lib/chef/application.rb:66:in `run' 
/opt/ruby/lib/ruby/gems/1.8/gems/chef-0.10.2/bin/chef-solo:25 
/opt/ruby/bin/chef-solo:19:in `load' 
/opt/ruby/bin/chef-solo:19 

Bất kỳ suy nghĩ,

Cảm ơn, Radu

+0

Stacktrace trong '/ tmp/vagrant-chef-1/chef-stacktrace.out' trông như thế nào? –

+0

đã thêm nó làm chỉnh sửa sau – Radu

+0

Đầu bếp có chạy trước đó hoàn thành không có lỗi không? Trong dòng 114 của 'my-site/recipes/default.rb', bạn có thể truy cập vào một số thuộc tính nút không tồn tại. Có một cái nhìn vào dòng mã đó, bạn có nhận ra đối tượng nào là nil ở đó không, và bạn có thể chế tạo nó để nó không phải là không? –

Trả lời

6

Đây là lỗi trong chính công thức Đầu bếp của bạn. Nếu bạn đọc stacktrace, bạn có thể thấy rằng lỗi thực sự là trên dòng 114 của công thức mặc định trong sổ làm việc my-site. Lỗi Ruby bạn đang thấy có nghĩa là bạn đang cố gắng thực hiện điều gì đó như a[:foo] trong đó anil. Tất nhiên, bạn không thể gọi số [] trên nil.

2

Tôi gặp vấn đề tương tự. Tôi đã tìm ra rằng phiên bản đầu bếp đang chạy trong máy ảo của tôi quá cũ (0.10.10).

Bạn cần phải cập nhật nó:

 
local$ vagrant ssh 
vagrant$ gem install chef 

và thử lại.

+1

Chạy dưới dạng root/với sudo. Khi người dùng lang thang bạn nhận được lỗi này: "Bạn không có quyền ghi vào thư mục /opt/vagrant_ruby/lib/ruby/gems/1.8" – Henk

0

tôi nhận được lỗi:

Chef never successfully completed! Any errors should be visible in the 
output above. Please fix your recipes so that they properly complete. 

Error executing action `create` on resource 'mysql_service[default]' 

tôi đã sử dụng:

local$ vagrant ssh 
vagrant$ gem install chef 

Sau khi thử một lần nữa, tất cả làm việc ngoài hoàn hảo.