Skip to content

Puppet

How-to

Make changes

To make changes, edit the repository on the primary Puppet server (currently puppetserver05) in /srv/git/puppet/main as your own user. git commit your changes, which will then be automatically pushed to the public Git repo on git.majava.org.

Please make sure that your Git configuration file has user information set properly. You might want to use the home provisioning mechanism available.

Never rewrite Git history, since commits are automatically synced to other servers.

Make changes to the private repository

The private repository holds secrets that can't be made public. It is located on the Puppet servers as /srv/git/puppet/private. Edit it like you would edit the main repository.

Never copy this repository off the Puppet servers. Don't rewrite history on this repository, either.

Manage third-party modules

Using third-party modules is generally discouraged except a few specific cases. However, if you need to use them, here's how.

Third party modules are managed via r10k and stored in the vendor_modules directory. To make changes, edit Puppetfile and execute the following command as your own user in /srv/git/puppet/main:

$ r10k puppetfile install

Remember to commit your changes afterwards.

Please note that r10k does not resolve module dependencies, you need to ensure they are met manually.

To remove a module, remove it from Puppetfile and execute:

$ r10k puppetfile purge