我正在尝试用我的实际测试套件使用LXC运行厨房,我已经尝试将厨房委托给vagrant-lxc和kitchen-lxc两者都没有运气。 使用kitchen-lxc我的kitchen.yml看起来就是这样:
driver_plugin: lxc
driver_config:
require_chef_omnibus: false
provisioner:
name: chef_solo
platforms:
- name: ubuntu-12.04
driver_config:
base_container: "opscode-ubuntu-12.04"
username: ubuntu
password: ubuntu
suites:
- name: default
run_list:
- recipe[project::default]
当我进行厨房测试时,我正在
Failed to complete #create action: [Permission denied - /var/lib/lxc/opscode-ubuntu-12.04-L1qycdk8K0J0/config] (Kitchen::ActionFailed)
在这种情况下,我有一个vagrant-lxc盒子,我没有配置路径或东西告诉厨房容器在哪里,怎么办?
使用vagrant-lxc插件我这样配置了kitchen.yml:
---
driver:
name: vagrant
require_chef_omnibus: false
require_chef_berkshelf: true
driver_config:
require_chef_omnibus: false
provider: lxc
provisioner:
name: chef_solo
platforms:
- name: ubuntu-12.04
driver_config:
box: "opscode-ubuntu-12.04"
box_url: "http://dl.company.com/boxes/vagrant-lxc-precise-amd64.box"
suites:
- name: default
run_list:
- recipe[project::default]
在这种情况下,这就是我得到的:
["sudo", "lxc-create", "--template", "vagrant-tmp-opscode-ubuntu-1204_default_1393616342539_80654", "--name", "opscode-ubuntu-1204_default_1393616342539_80654", "-f", "/home/user/.vagrant.d/boxes/opscode-ubuntu-12.04/lxc/lxc.conf", "--", "--tarball", "/home/user/.vagrant.d/boxes/opscode-ubuntu-12.04/lxc/rootfs.tar.gz", "--auth-key", "/opt/vagrant/embedded/gems/gems/vagrant-1.4.3/keys/vagrant.pub"]
我认为问题在于模板名称,但我可能错了,会出现什么问题?
无论哪种方式我想解决我的问题,请提供一些建议。
忘了告诉使用带有vagrant-lxc的纯Vagrantfile运行lxc容器工作正常,这不是工具问题。
答案 0 :(得分:0)
我最后通过Vagrant而不是使用kitchen-lxc来使用kitchen-vagrant和LXC。 所以它将接近2进行一些更改,如下所示:
---
driver:
name: vagrant
require_chef_omnibus: false
require_chef_berkshelf: true
driver_config:
require_chef_omnibus: false
provisioner:
name: chef_solo
platforms:
- name: ubuntu-12.04
driver:
box: "ubuntu-12.04"
box_url: "http://dl.company.com/boxes/vagrant-lxc-precise-amd64.box"
provider: lxc
另外,作为建议,在开始测试厨房工作流程之前,应该确保你使用的vagrant-lxc盒在vagran-lxc下工作正常,
希望对别人有所帮助。