首页 > 解决方案 > 厨房无法加载 Vagrant

问题描述

当我尝试调整时,kitchen converge我不断收到以下错误:

-----> Starting Kitchen (v1.20.0)
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::ClientError
>>>>>> Message: Could not load the 'vagrant' driver from the load path. Please ensure that your driver is installed as a gem or included in your Gemfile if using Bundler.
>>>>>> ----------------------
>>>>>> Please see .kitchen/logs/kitchen.log for more details
>>>>>> Also try running `kitchen diagnose --all` for configuration

[root@kitchen besclient]# chef -v
Chef Development Kit Version: 2.0.26
chef-client version: 13.2.20
delivery version: master (17c1b0fed9be4c70f69091a6d21a4cbf0df60a23)
berks version: 6.2.0
kitchen version: 1.16.0
inspec version: 1.30.0

Vagrant 已安装,几周前我能够收敛。我有 gemfile

source 'https://rubygems.org'

group :lint do
  gem 'foodcritic', '~> 3.0'
  gem 'rainbow', '< 2.0'
  gem 'rake'
  gem 'rubocop', '~> 0.18'
end

group :unit do
  gem 'berkshelf',  '~> 3.0.0.beta6'
  gem 'chefspec',   '~> 3.2'
end

group :kitchen_common do
  gem 'test-kitchen', '~> 1.2'
end

group :kitchen_vagrant do
  gem 'kitchen-vagrant', '~> 0.11'
end

group :kitchen_cloud do
  gem 'kitchen-digitalocean'
  gem 'kitchen-ec2'
end      

标签: chef-infrachef-recipetest-kitchen

解决方案


我们不建议将 Bundler 与 ChefDK 一起使用。最新的 ChefDK (3.x) 使它工作得更好一些,但仍然不是一个好的计划。删除 Gemfile,它应该会更好。

更具体地说,您kitchen-vagrant在那里锁定到 0.x,它非常旧并且不再工作(vagrant 不再是一个 gem,它是一个独立的安装程序)。


推荐阅读