Kitchen::Provisioner::Cfengine
A CFEngine provisioner for Test Kitchen.
Installation
Add this line to your application's Gemfile:
gem 'kitchen-cfengine'
And then execute:
$ bundle
Or install it yourself as:
$ gem install kitchen-cfengine
Provisioner Configuration
The following attributes may be set at the provisioner level:
name- cfenginecfenging_type- eithercommunityorenterprise, defaults tocommunitycfengine_community_quick_install_url- url for the cfengine-community quick install script, defaults tohttp://s3.amazonaws.com/cfengine.packages/quick-install-cfengine-community.shcfengine_enterprise_quick_install_url- url for the cfengine-enterprise quick install script, defaults tohttp://s3.amazonaws.com/cfengine.packages/quick-install-cfengine-enterprise.shchef_omnibus_url- url for chef omnibus install, defaults tohttps://www.getchef.com/chef/install.shcfengine_policy_server_address- optional IP address or hostname for policy server, if no address is provided the VM is bootstrapped to itselfcf_agent_args- arguments to pass to cf-agent on provisioning, defaults to-KIcf_agent_runs- number of times to run cf-agent, useful if multiple runs are needed for full convergence, defaults to1cfengine_files- specifies a directory that will be copied into/var/cfengine/on the VM, defaults totest/cfengine_files
Additionally you may set the run_list attribute at the suite level to run a specific policy file.
Example Usage
Below is a sample .kitchen.yaml file that will install CFEngine Enterprise on CentOS 6.5, bootstrap it to the remote policy hub 192.168.33.33, then run the my_test.cf policy file with the -KI -D testrun arguments:
---
driver:
name: vagrant
provisioner:
name: cfengine
cfenging_type: enterprise
cfengine_policy_server_address: 192.168.33.33
cf_agent_args: -KI -D testrun
platforms:
- name: centos-6.5
driver:
box: chef/centos-6.5
suites:
- name: default
run_list:
- my_test_.cf