我很高兴地发现 chef_zero 使用“test/integration”目录作为它的厨师存储库。
只需在下创建您的角色
例子
标准厨师食谱布局。
├── attributes
│ └── default.rb
├── Berksfile
├── Berksfile.lock
├── chefignore
├── .kitchen.yml
├── metadata.rb
├── README.md
├── recipes
│ └── default.rb
└── test
└── integration
├── default
│ └── serverspec
│ ├── default_spec.rb
│ └── spec_helper.rb
└── roles
└── demo.json
.kitchen.yml
---
driver:
name: vagrant
provisioner:
name: chef_zero
platforms:
- name: ubuntu-14.04
suites:
- name: default
run_list:
- role[demo]
attributes:
笔记:
- 供应商是 chef_zero
- 运行列表配置为使用角色
食谱/default.rb
file "/opt/helloworld.txt" do
content "#{node['demo']['greeting']}"
end
属性/default.rb
default['demo']['greeting'] = "hello world"
笔记:
测试/集成/默认/serverspec/default_spec.rb
require 'spec_helper'
describe file('/opt/helloworld.txt') do
it { should be_file }
its(:content) { should match /this came from my role/ }
end
笔记:
测试/集成/角色/demo.json
{
"name": "demo",
"default_attributes": {
"demo": {
"greeting": "this came from my role"
}
},
"run_list": [
"recipe[demo]"
]
}