An example Puppet module for Boxen.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Using this Template

Bootstrap it:

mkdir -p ~/src/boxen/puppet-mynewmodule
cd ~/src/boxen/puppet-mynewmodule
git init .
git remote add template
git fetch template
git checkout -b master template/master

Now edit the class name in manifests/init.pp and spec/classes/template_spec.rb to match the name of the module, without forgetting to rename template_spec.rb accordingly.

Now we're ready to make it our own and run a build!


Note that unless you have edited the class name and then run the above scripts, puppet-lint will fail during the cibuild with an error message similar to:

--> Checking lint:
manifests/init.pp - ERROR: template not in autoload module layout on line 2

If your module has other dependencies, be sure to update spec/fixtures/Puppetfile. From then on, you can use script/cibuild to run the tests.

When you're ready to push:

git create githubusername/puppet-mynewmodule
git push origin master

The rest of the README as follows can be used as a template for your module's README.

Template Puppet Module for Boxen

An example of how we write Puppet modules for Boxen. Replace this paragraph with a short explanation of what the heck makes your module useful.

A great module has a working travis build

Build Status


boxen::example { 'best example ever':
  salutation => 'fam'

Required Puppet Modules

  • boxen
  • anything-else


Set GITHUB_API_TOKEN in your shell with a Github oAuth Token to raise your API rate limit. You can get some work done without it, but you're less likely to encounter errors like Unable to find module 'boxen/puppet-boxen' on You can also set this environment variable securely on Travis to ensure your CI builds don't run into the same issue - check out Travis's docs on repository settings.

Then write some code. Run script/cibuild to test it. Check the script directory for other useful tools.