我正在尝试使其成为带有 kitchen-openstack 的工具测试厨房,以对我们拥有的一些 Chef 食谱执行一些集成/功能测试。
但我无法让它工作:(我有一个 .kitchen.yml 包含以下内容:
driver:
name: openstack
openstack_username: test
openstack_api_key: test
openstack_auth_url: http://<openstackServerIp>:35357/v2.0/
require_chef_omnibus: latest
image_ref: CentOS-6.5-Template
flavor_ref: cloud.tiny
openstack_tenant: test
provisioner:
name: chef_solo
platforms:
- name: centos-6.5
suites:
- name: default
run_list:
- recipe[myTestChef::default]
到目前为止,当我做 kitchen create default-centos-65 时,我收到的是:
Message: Expected([200, 204]) <=> Actual(400 Bad Request)
response => #<Excon::Response:0x00000001eed698 @data={:body=>"{\"error\": {\"message\": \"get_version_v2() got an unexpected keyword argument 'auth'\", \"code\": 400, \"title\": \"Bad Request\"}}", :headers=>{"Vary"=>"X-Auth-Token", "Content-Type"=>"application/json", "Content-Length"=>"121", "Date"=>"Mon, 05 May 2014 18:02:15 GMT"}, :status=>400, :remote_ip=>"<openstackServerIp>", :local_port=>34592, :local_address=>"192.168.10.32"}, @body="{\"error\": {\"message\": \"get_version_v2() got an unexpected keyword argument 'auth'\", \"code\": 400, \"title\": \"Bad Request\"}}", @headers={"Vary"=>"X-Auth-Token", "Content-Type"=>"application/json", "Content-Length"=>"121", "Date"=>"Mon, 05 May 2014 18:02:15 GMT"}, @status=400, @remote_ip="<openstackServerIp>", @local_port=34592, @local_address="192.168.10.32">
当我运行厨房清单时,我得到:
Instance Driver Provisioner Last Action
default-centos-65 Openstack ChefSolo <Not Created>
我究竟做错了什么?任何人都可以分享一些如何设置的步骤或示例吗?
我从在 OpenStack 的同一项目中创建的 VM 运行它。