Before you install Puppet Development Kit (PDK), make sure you meet the system and language version requirements.

By default, PDK installs to the following locations:

  • On *nix and macOS systems: /opt/puppetlabs/pdk/

  • On Windows systems: C:\Program Files\Puppet Labs\DevelopmentKit

PDK uses Puppet 4 and later. Modules created with PDK work with all Puppet and Ruby version combinations currently under maintenance. See open source Puppet and Puppet Enterprise lifecycle pages for details.

PDK functions, such as creating classes, testing, and validation, are supported only on modules created or converted with PDK.

Supported operating systems

PDK is compatible with *nix, Windows, and macOS systems. For detailed version compatibility, see the table below.
Operating systemVersionsArchPackage type
CentOS 6, 7x86_64RPM
Debian 8, 9x86_64DEB
Fedora 28, 29x86_64RPM
macOS 10.11, 10.12, 10.13, 10.14x86_64

DPKG

Oracle Linux 6, 7x86_64RPM
Red Hat Enterprise Linux (RHEL) 6, 7x86_64RPM
Scientific Linux 6, 7x86_64RPM
SUSE Linux Enterprise Server 11, 12x86_64N/A
Ubuntu 14.04, 16.04, 18.04x86_64DEB
Windows (Consumer OS) 7, 8.1, 10x86_64MSI
Windows (Server OS) 2008r2, 2012, 2012r2, 2012r2 Core, and 2016x86_64MSI
Tip: On Windows, PowerShell version 2.0 or greater is supported, but we recommend 4.0 or greater.

Install PDK on Linux

On *nix systems, you can install PDK either from a downloadable package or from a repository.

By default, PDK installs to /opt/puppetlabs/pdk/

Install from the package

Download and install the PDK package for Red Hat and Debian systems. 

  1. Download the package for your operating system from the PDK download site.
  2. Install the package using the command appropriate to your system:
    OptionDescription
    On RPM-based (such as Red Hat or CentOS) systems: sudo rpm -ivh pdk-<VERSION>-<PLATFORM>.rpm
    On Debian (such as Debian or Ubuntu) systems: sudo dpkg -i pdk-<VERSION>-<PLATFORM>.deb

To update your PDK installation, download and install the latest package.

Install from the repository

Download and install the PDK repository with the package manager for your platform. 

Before you begin

Enable the Puppet platform repositories. See the documentation for your version of Puppet.

CAUTION: If you're installing PDK on a system managed by PE, download and install the package from the Puppet download site to avoid agent version conflicts. See installing PDK packages on Linux for more information. 
  1. Install the package using the command appropriate to your system.
    OptionDescription
    On RPM-based (such as Red Hat or CentOS) systems: sudo yum install pdk
    On Debian (such as Debian or Ubuntu) systems: sudo apt-get install pdk
  2. Open a terminal to re-source your shell profile and make PDK available to your PATH.
To upgrade your PDK installation to the most recent release, run the command for your system:
  • For RPM-based systems, run sudo yum upgrade pdk

  • For Debian systems, run
    sudo apt-get update
    sudo apt-get install pdk

Install PDK on Mac OS X

To install PDK on Mac OS X, download and install the package or install with Homebrew.

By default, PDK installs to /opt/puppetlabs/pdk/

Download and install the package

Download and install the package for Mac OS X systems.

  1. Download the package for your operating system from the PDK download site.
  2. Double click on the downloaded package to install.
  3. Open a terminal to re-source your shell profile and make PDK available to your PATH.

Install with Homebrew

Install and upgrade PDK with Homebrew, a package manager for Mac OS X.

Before you begin

You must have Homebrew installed. See the Homebrew page for download and installation information.

If you've already installed PDK with the main Homebrew cask, see the topic about migrating your PDK installation to the Puppet Homebrew cask.

  1. Install PDK by running brew cask install puppetlabs/puppet/pdk
  2. Open a terminal to re-source your shell profile and make PDK available to your PATH. 

To update PDK to the most recent release, run brew cask upgrade pdk

Migrate PDK installation to the Puppet Homebrew cask

If you previously installed PDK with the main Homebrew cask instead of the Puppet cask, migrate your PDK installation to the Puppet cask.

Before you begin

If this is the first time you are installing PDK with Homebrew, see the topic about installing PDK with Homebrew. 

  1. Update Homebrew by running brew update
  2. Add the Puppet cask by running brew tap puppetlabs/puppet

To update PDK to the most recent release, run brew cask upgrade pdk

Install PDK on Windows

Download and install the PDK package for Windows systems, or install with Chocolatey, a package manager for Windows.

By default, PDK installs into C:\Program Files\Puppet Labs\DevelopmentKit

Download and install the package

Download and install the PDK package for Windows systems.

  1. Download the package for your operating system from the PDK download site.
  2. Double click on the downloaded package to install.
  3. Open a new PowerShell window to re-source your profile and make PDK available to your PATH.

On PowerShell 4.0 or later, PDK loads automatically and pdk commands are available to the prompt. On PowerShell 2.0 or 3.0, you'll need to add the PowerShell module to your profile.

Tip: If you encounter execution policy restriction errors when you try to run pdk commands, see troubleshooting for help.

Install with Chocolatey

Install and upgrade PDK with Chocolatey, a package manager for Windows.

Before you begin

To install and upgrade PDK with the Chocolatey package manager for Windows, you must have Chocolatey installed. See the Chocolatey documentation for installation instructions.

  1. Install PDK by running choco install pdk
  2. Open a new PowerShell window to re-source your profile and make PDK available to your PATH.

To upgrade PDK to the most recent release, run choco upgrade pdk

On PowerShell 4.0 or later, PDK loads automatically and pdk commands are available to the prompt. On PowerShell 2.0 or 3.0, you'll need to add the PowerShell module to your profile.

Tip: If you encounter execution policy restriction errors when you try to run pdk commands, see troubleshooting for help.

Add the PDK module to PowerShell

PowerShell versions 2.0 and 3.0 cannot automatically discover and load the PDK module, so you'll need to add it manually. 

To allow PowerShell to load PDK, add the module to your PowerShell profile.

  1. Add the following line to your PowerShell profile:
    `Import-Module -Name "$($env:ProgramFiles)\WindowsPowerShell\Modules\PuppetDevelopmentKit"`
  2. Close and re-open the PowerShell window to re-source your profile.

PDK will now automatically load every time you open PowerShell.

Setting up PDK behind a proxy

If you are using PDK behind a proxy, you must set environment variables to enable PDK to communicate.

You can set these variables on the command line before each working session, or you can add them to your system configuration, which varies depending on the operating system.

On *nix or macOS systems, run:
export http_proxy="http://user:[email protected]:port"

export https_proxy="http://user:[email protected]:port"
On Windows systems, run:
$env:http_proxy="http://user:[email protected]:port"

$env:https_proxy="http://user:[email protected]:port"
Back to top
The page rank or the 1 our of 5 rating a user has given the page.
The email address of the user submitting feedback.
The URL of the page being ranked/rated.