Create high-quality modules with Puppet Development Kit (PDK). PDK provides integrated testing tools and a simple command line interface to help you develop, validate, and test modules.

Helpful PDK linksOther useful places
Before you install
PDK overview and workflow
Release notes
Tools included in PDK
Installing
PDK system requirements
Install on Linux
Install on Mac OS X
Install on Windows
Upgrading your PDK installation
Developing modules
Creating modules
Converting modules to PDK
Customizing module configuration
Building a module package
Testing modules
Validating module syntax and style
Running unit tests on modules
Reference 
PDK command reference
PDK troubleshooting
Learning to write Puppet code
Module fundamentals
Beginner's guide to writing modules
Puppet Language style guide
Writing Puppet tasks and plans
Updating Puppet 3 manifests
Testing Puppet code 
rspec-puppet, included in PDK, provides an RSpec test framework for Puppet.
puppet-lint, included in PDK, validates Puppet code against the recommended language style guide.
rspec-puppet-facts, included in PDK, provides support for running rspec tests for your module's supported operating systems.
Rubocop, a Ruby code analyzer.
Introduction to testing Puppet code: a talk by David Schmitt.
Puppet code authoring tools
The Puppet plugin for the IntelliJ IDEA Java IDE.
The Puppet extension for Visual Studio Code.
Note: We are always trying to improve PDK to better suit the needs of our users --- and we would love to get your help. To help us plan the future of PDK and get early exposure to new releases and features, please register as a tester.
Back to top