A tap for Puppet macOS packages
brew install --cask puppetlabs/puppet/<package>
To install Bolt with brew run
brew install --cask puppetlabs/puppet/puppet-bolt
This will install bolt to /opt/puppetlabs/bin/bolt
, so to use bolt add /opt/puppetlabs/bin
to your path
export PATH=$PATH:/opt/puppetlabs/bin
To install Bolt 2.x, run
brew tap puppetlabs/puppet
brew install puppet-bolt@2
To install the latest version of PE Client Tools run
brew install puppetlabs/puppet/pe-client-tools
To install the client tools for PE 2021, run
brew install puppetlabs/puppet/pe-client-tools
This will install the standalone commands from pe-client-tools to /opt/puppetlabs/bin
so you'll need to have /opt/puppetlabs/bin
in your path. All the commands are also available via a puppet face if you have the puppet-agent installed too.
To install PDK with brew:
brew install --cask puppetlabs/puppet/pdk
This will install PDK into /opt/puppetlabs/pdk
and add an entry into /etc/paths.d
to add PDK to your
shell's PATH, however you may have to relaunch your terminal session before pdk
can be found on your PATH.
If you use ZShell (zsh), you will have to take additional steps before pdk
can be found on your PATH, see
the PDK Troubleshooting docs
to learn more.
To install the latest PDK 1.x release, run
brew tap puppetlabs/puppet
brew install pdk@1
To install the very latest Puppet Agent with brew:
brew install puppetlabs/puppet/puppet-agent
Additionally we maintain versioned casks for each collection
puppetlabs/puppet/puppet-agent-6
puppetlabs/puppet/puppet-agent-7
To install Wash with brew:
brew install puppetlabs/puppet/wash
This will build Wash (with Go) and install it to /usr/local/bin/wash
.
To install the CLI tool to interact with Relay:
brew install puppetlabs/puppet/relay
This will install the relay CLI from the binary builds produced at @puppetlabs/relay - no local build tools are required.
If you previously installed the PDK or Bolt from homebrew before this tap existed, you will see errors about the keg not existing or the cask already being installed.
To remedy that, simply add the puppetlabs/puppet
tap after updating homebrew:
brew update
brew tap puppetlabs/puppet
After tapping, you can refer to the packages by their short name when interacting with them. For example:
brew upgrade pdk
When new versions of packages are shipped, you can use a Rake task to update the Cask to the latest version and SHAs
rake 'brew:cask[puppet-bolt]'
To update the versioned casks - for example puppet-agent-6
- include the collection as a 2nd argument
rake 'brew:cask[puppet-agent,6]'
You can test updated Cask files with
brew install Casks/puppet-bolt.rb --force
Right now, pe-client-tools live in a location that can't be browsed so we needed a different rake task for it. There is a variable for the latest / default version of PE and a hash that defines the pe-client-tools version associated with each PE version.
To pull down a new version of the client tools you will first want to update the variables in the Rakefile and then run one of these commands:
# utilize the LATEST_PE variable
rake brew:pe_client_tools
# Update the individual PE collections
rake 'brew:pe_client_tools[2019.8]'
Internally, we can look for the available versions by poking around on http://builds.puppetlabs.lan/pe-client-tools/