Contents

Introducing Scaffold

Contents

I’ve just written and released Scaffold - a very simple Puppet scaffolding templating tool. It integrates with Puppet to create a variety of Puppet configuration and objects. You can install it via a gem currently: $ sudo gem install scaffold It requires Puppet and will install the templater gem as a dependency. You can then use it like so: * Basic Puppet configuration (creates site.pp, fileserver.conf and supporting material in the Puppet configuration directory): $ scaffold puppet * Modules (it checks the Puppet module path and creates the module in the first module path it finds): $ scaffold module _module_name_ * Nodes (assumes you’ve created the basic Puppet configuration and creates nodes in Puppet configuration directory): $ scaffold node _node_name_ * Classes and Definitions: $ scaffold class _module_name class_name_ $ scaffold define _module_name define_name_ * Functions: $ scaffold function _module_name function_name function_type_ The function type can be statement or rvalue and defaults to statement if omitted.

  • Types and providers: $ scaffold type _module_name type_name_ I’d welcome feedback and ideas (and code!) on how to extend it. The idea is that once we’ve got a strong working tool we’ll look to integrate the result into Puppet mainline as a provisioning and templating system.