Deployment of the Puppet code is, most times, a matter of updating modules, manifests, and Hiera data on the relevant directories of the Puppet Master.
We deal with two logically different kinds of code that involve different management patterns, which are:
Our modules, manifests, and data
The public modules we are using
We can manage them in various ways. Some of them are:
The librarian-puppet
tool (http://librarian-puppet.com) was developed to manage the installation of a set of modules from the Puppet Forge or any Git repository. It is based on Puppetfile
, where the modules and the versions to install are defined:
forge "http://forge.puppetlabs.com" # Install a module...