Installing PDK
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 the latest versions of Puppet 7 and 8 available at the time of release. Modules created with PDK work with all Puppet and Ruby version combinations currently under maintenance. See the 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 system | Versions | Arch | Package type |
---|---|---|---|
Debian | 9, 10, 11 | x86_64 | DEB |
Fedora | 36 | x86_64 | RPM |
OSX | 11, 12 | x86_64 | DPKG |
Red Hat Enterprise Linux (RHEL) | 6, 7, 8, 9 | x86_64 | RPM |
SUSE Linux Enterprise Server | 12, 15 | x86_64 | N/A |
Ubuntu | 18.04, 20.04, 22.04 | x86_64 | DEB |
Windows (Consumer OS) | 10, 11 | x86_64 | MSI |
Windows (Server OS) | 2016, 2019, 2022 | x86_64 | MSI |
Install PDK on Linux
On *nix systems, you can install PDK either from with the YUM or Apt package managers.
By default, PDK installs to /opt/puppetlabs/pdk/
.
Install on RHEL, SLES, or Fedora
Install PDK with the YUM package manager.
-
Download and install the software and its dependencies. Use the commands appropriate to your system.
-
RHEL 6
sudo rpm -Uvh https://yum.puppet.com/puppet-tools-release-el-6.noarch.rpm sudo yum install pdk
-
RHEL 7
sudo rpm -Uvh https://yum.puppet.com/puppet-tools-release-el-7.noarch.rpm sudo yum install pdk
-
RHEL 8
sudo rpm -Uvh https://yum.puppet.com/puppet-tools-release-el-8.noarch.rpm sudo yum install pdk
-
RHEL 9
sudo rpm -Uvh https://yum.puppet.com/puppet-tools-release-el-9.noarch.rpm sudo yum install pdk
-
SUSE Linux Enterprise Server 15
sudo rpm -Uvh https://yum.puppet.com/puppet-tools-release-sles-15.noarch.rpm sudo zypper install pdk
-
Fedora 36
sudo rpm -Uvh https://yum.puppet.com/puppet-tools-release-fedora-36.noarch.rpm sudo dnf install pdk
-
Open a terminal to re-source your shell profile and make PDK available to your PATH.
What to do next:
To upgrade your PDK installation to the most recent release, run
sudo yum upgrade pdk
Install on Debian or Ubuntu
Install PDK with the Apt package manager.
-
Download and install the software and its dependencies. Use the commands appropriate to your system.
-
Debian 9
wget https://apt.puppet.com/puppet-tools-release-stretch.deb sudo dpkg -i puppet-tools-release-stretch.deb sudo apt-get update sudo apt-get install pdk
-
Debian 10
wget https://apt.puppet.com/puppet-tools-release-buster.deb sudo dpkg -i puppet-tools-release-buster.deb sudo apt-get update sudo apt-get install pdk
-
Debian 11
wget https://apt.puppet.com/puppet-tools-release-bullseye.deb sudo dpkg -i puppet-tools-release-bullseye.deb sudo apt-get update sudo apt-get install pdk
-
Ubuntu 18.04
wget https://apt.puppet.com/puppet-tools-release-bionic.deb sudo dpkg -i puppet-tools-release-bionic.deb sudo apt-get update sudo apt-get install pdk
-
Ubuntu 20.04
wget https://apt.puppet.com/puppet-tools-release-focal.deb sudo dpkg -i puppet-tools-release-focal.deb sudo apt-get update sudo apt-get install pdk
-
Ubuntu 22.04
wget https://apt.puppet.com/puppet-tools-release-jammy.deb sudo dpkg -i puppet-tools-release-jammy.deb sudo apt-get update sudo apt-get install pdk
-
Open a terminal to re-source your shell profile and make PDK available to your PATH.
What to do next:
To upgrade your PDK installation to the most recent release, run:
sudo apt-get update
sudo apt-get install pdk
Install PDK on macOS
To install PDK on macOS, download and install the package or install with Homebrew.
By default, PDK installs to /opt/puppetlabs/pdk/
.
Install with Homebrew
Install and upgrade PDK with Homebrew, a package manager for macOS.
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.
Install PDK by running
brew install --cask puppetlabs/puppet/pdk
Open a terminal to re-source your shell profile and make PDK available to your PATH.
What to do next:
To update PDK to the most recent release, run brew upgrade --cask 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.
Update Homebrew by running
brew update
Add the Puppet cask by running
brew tap puppetlabs/puppet
What to do next:
To update PDK to the most recent release, run brew upgrade --cask pdk
Download and install the package
Download and install the package for macOS systems.
Download the package for your operating system from the PDK download site.
Double click on the downloaded package to install.
Open a terminal to re-source your shell profile and make PDK available to your PATH.
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
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.
Install PDK by running
choco install pdk
Open a new PowerShell window to re-source your profile and make PDK available to your PATH.
What to do next:
To upgrade PDK to the most recent release, run choco upgrade pdk
Download and install the package
Download and install the PDK package for Windows systems.
Download the package for your operating system from the PDK download site.
Double click on the downloaded package to install.
Open a new PowerShell window to re-source your profile and make PDK available to your PATH.
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:password@proxy.domain.com:port"
export https_proxy="http://user:password@proxy.domain.com:port"
On Windows systems, run:
$env:http_proxy="http://user:password@proxy.domain.com:port"
$env:https_proxy="http://user:password@proxy.domain.com:port"
Setting up the PDK to connect to self-hosted git repositories
If after you've created a new module with the pdk, you want to download and test dependencies or "fixtures" from a self-hosted git repository, then you'll need to configure the pdk to trust this self-hosted site. For more information, see PDK Troubleshooting.