Welcome to the Puppet Forge

A repository of modules for Open Source Puppet and Puppet Enterprise IT automation software.

Introducing Tasks


Puppet Tasks gives you the ability to automate ad hoc work in an imperative way. You can bring your existing scripts you've already written, write commands in the Puppet Tasks framework, or use modules, which can now include tasks. Find a task to help you troubleshoot systems and devices, automate point in time changes, or execute sequenced actions in application deployments.

Puppet Development Kit


The Puppet Development Kit (PDK) is the shortest path to better modules. It makes it easier than ever to develop and test Puppet modules by providing a simple, unified interface to a set of helpful tools for anyone who writes or consumes Puppet code. Learn more from the announcement blog post. Try it out now by downloading the PDK and running through the Getting Started guide.

Puppet 5 is Here!

Puppet 5 provides both enhancements and some deprecations over Puppet 4 while largely retaining backwards compatibility. Check out the announcement blog post to learn more. If you're still on Puppet 3.x, review the upgrade mini-site to plan your upgrade.

For authors, we recommend:

  • Reading through the Updating Manifests for Puppet 5 documentation
  • Testing your module code under Puppet 5 and updating compatibility metadata once you're sure everything works

Writing Great Modules

Modules are reusable, sharable units of Puppet code. You can use modules to extend Puppet across your infrastructure by automating tasks such as setting up a database, web server, or mail server.

Authoring Tools

Write Puppet code in your favorite editor with the following tools and plugins:

Authors: Add compatibility data to your modules

We've added search filters to help people find modules that are compatible with their Puppet versions and platforms. Learn how to add this data to your modules here.

New to the Puppet Forge?

A Video Introduction

Learn more at learn.puppet.com.

Share modules

Register an account, create a module, upload a release of it, and your automation code is shared with the Puppet community.

Learn how to create and share modules using the Puppet module tool.