Welcome to Puppet Development Kit 1.18


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

Helpful PDK links Other useful places
Before you install
PDK overview and workflow
Release notes
Tools included in PDK
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
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 
puppet-lint, included in PDK, validates Puppet code against the recommended language style guide.
metadata-json-lint, included in PDK, validates your module metadata file. 
rspec-puppet, included in PDK, provides an RSpec test framework for Puppet.
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 Extension for Visual Studio Code.
The Puppet plugin for the IntelliJ IDEA Java IDE.
Note: We are always trying to improve PDK to 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.
See an issue? Please file a JIRA ticket in our [DOCUMENTATION] project
Puppet sites use proprietary and third-party cookies. By using our sites, you agree to our cookie policy.