To get started with automation you need a simple, fast and agentless multi-platform approach that doesn’t require any prior installation or Puppet knowledge. This is Bolt.

With Bolt you can reuse your existing scripts in Bash, PowerShell, Python or any other language, or you can take advantage of the 5,700 modules on the Puppet Forge. You can perform various tasks like start and stop services, reboot remote systems, gather packages and systems facts from your workstation or laptop.

Open Source Puppet

Puppet automates repetitive and error-prone system administration tasks. Its easy-to-read language allows you to declare how your systems should be configured to do their jobs. It's a very different approach from scripting-based tools, which require you to describe the step-by-step process for configuring systems. Set up systems quickly and move on to the rest of your work, knowing Puppet will enforce system states as you’ve defined them. Open Source Puppet now incorporates Hiera, a key/value lookup tool for configuration data. It keeps your site-specific data separate from modules and manifests, making them easier to construct, read, modify and reuse.


Lyra is an open source workflow engine for provisioning and managing cloud native infrastructure. Based on infrastructure-as-code best practices, Lyra enables you to declaratively provision and manage public cloud, private cloud, and other API-backed resources. Teams can orchestrate imperative actions as well.

Puppet Development Kit (PDK)

Puppet Development Kit (PDK) makes it easy 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. With PDK you get going fast with a batteries-included Puppet development environment and access to best practices and new tools to build, test and deliver high-quality Puppet modules with confidence. Additionally, the PDK offers the ability to catch issues earlier, before Puppet code is applied to live infrastructure by testing modules right from your Windows, OS X or Linux workstation.

Puppet® Container Registry

Puppet Container Registry makes it easy for software teams to host Docker images within their infrastructure along with a unified view of all their images stored in local and remote repositories. Engineered for the enterprise, it includes powerful features like single sign-on and access control.

Puppet DB

PuppetDB collects and stores data generated by Puppet giving you access to a huge inventory of metadata about every node in your infrastructure. Benefits include a searchable database of each resource managed on any node and the most recent facts, catalog and event reports for those nodes.


Beaker is a cloud-based acceptance testing harness for open source Puppet, Puppet Enterprise and other Puppet projects. It can be used as a provisioner for setting up virtual machines, running any configuration on those machines and then exiting.


Facter gathers basic facts about nodes (systems) such as hardware details, network settings, OS type and version, and more. These facts are made available as variables in your Puppet manifests and can be used to inform conditional expressions in Puppet.


Trapperkeeper is a Clojure framework for hosting long-running applications and services. It provides a simple configuration syntax and unified initialization of logging and configuration. Additionally you can use Trapperkeeper to configure and control which parts of the system are loaded at run-time, compose modular bits of functionality, cohesively manage the lifecycle of application components and load multiple web apps into a single web server.


Razor is an advanced provisioning application used to discover and deploy bare-metal machines and virtual systems. Razor lets you automate the process of going from a newly racked machine with no operating system to one that’s fully installed, managed by Puppet and ready to work — with no human intervention.

And there's more!

We do all of our open source development in the open on GitHub, so check out our repositories under the 'puppetlabs' namespace.