Specifying Puppet catalog behavior with Cucumber
Ruby Puppet
Latest commit 0534ad7 Nov 6, 2013 @petems Merge pull request #23 from borisyukd/master
Fix deprecated Puppet.parse_config
Permalink
Failed to load latest commit information.
bin
features
gemfiles
lib fix deprecated Puppet.parse_config Nov 2, 2013
man add a little more structure Sep 16, 2010
spec
.gitignore
.travis.yml
Appraisals Different Gemfiles for each version of puppet Sep 21, 2013
ChangeLog
Gemfile
Guardfile
LICENSE
README.md Added Travis badge Sep 21, 2013
Rakefile
TODO
VERSION.yml
cucumber-puppet.gemspec

README.md

cucumber-puppet

Build Status

The project was discontinued. I'm seeing if I can resurect it

Currently cucumber-puppet doesnt support Ruby 1.9+ or any puppetversion beyond 2.7...

Cucumber-puppet is a tool for specifying Puppet catalog behavior. It uses Cucumber features as specifications and provides the necessary glue to access a node's catalog from Cucumber's step definitions.

Quickstart

Install cucumber-puppet

$ gem install cucumber-puppet

Go to your Puppet directory

$ cd puppet

Initialise the infrastructure

$ cucumber-puppet-gen world

Create a default policy and adapt it to your needs

$ cucumber-puppet-gen policy
$ vim features/catalog/policy.feature

Copy YAML node files into place

$ mkdir features/yaml
$ cp /var/lib/puppet/yaml/node/localhost.example.com.yaml features/yaml

Apply your policy

$ cucumber-puppet features/catalog/policy.feature

An example use case can be found at https://github.com/nistude/cucumber-puppet.example.

Further documentation is available in the wiki.

Acknowledgements

Many thanks to Bernd Ahlers for getting me started with cucumber, rspec and ruby.

cucumber-puppet was inspired by Lindsay Holmwood's cucumber-nagios.