No commit activity in last 3 years
No release in over 3 years
There's a lot of open issues
Puppetry is a command line tool that aims at easing and uniforming development of Puppet modules, by performing common tasks such as setting up a new module source folder starting from a skeleton containing the proper directory structure and useful helpers.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

>= 0
>= 0
 Project Readme

Puppetry

Project Status

Gem Version Build Status Code Climate Coverage Status

Installation

Puppetry is currently shipped as a gem, so you just need to install it with:

$ gem install puppetry_toolbox

or, if you're using Bundler, set the following dependency line in your Gemfile:

gem 'puppetry_toolbox'

Usage

Puppetry can help you with the development of a Puppet module in many ways. Let's look at each of them.

Starting a new module

If you're to start development of a new module, you'll find that you need to at least setup a proper directory structure. If you're going to test your Puppet code (you ARE testing your Puppet code, aren't you?), you'll also need to setup your project dependencies, test helper file, load path, etc. Since this is almost all repeatable stuff, Puppetry ships with a command to generate the scaffolding for a new module.

Let's pretend you want to start working on the my_nice_module module; then you just need to:

puppetry new my_nice_module

This will generate a my_nice_module subdirectory in the current working directory. This directory will contain everything you need to start developing your new module.

In particular, created directory will be a Git repository tracking a remote named skeleton that points to the skeleton module used to scaffold the newly created one. So, it's possible to update the current scaffolding configuration by simply issuing:

git pull skeleton master

NOTE: This could lead to conflicts if you modify any of the files tracked by the skeleton module. Normal git housekeeping applies here though.