Geppetto is an Eclipse-based IDE for developing Puppet modules. The editor provides features such as syntax highlighting, code completion, error highlighting, refactoring, and even integrates directly with the Puppet Forge.
Geppetto is incredibly powerful and feature packed, but like many powerful tools it can tend to be complex and favor software developers over those using Geppetto to maintain the Puppet modules used to manage their infrastructure. We’d like a workflow that lets you quickly and easily update, test, and then deploy modules directly from your workstation. We’d like to use the New Project wizard to create new modules with all the expected metadata files in place and we’d like to have the option of publishing them to the Forge.
This tutorial describes how you can configure Geppetto for this style of development and a useful workflow for maintaining and updating your in-house Puppet modules. Unfortunately, some of the steps are still manual, but we will configure shortcuts for as much as we can. For simplicity, we will assume that you have some form of git server running on your Puppet Master, allowing you to easily create new repositories as needed with the proper hooks in place to keep the code in your Puppet modulepath updated.