File: configuration-puppet.md

package info (click to toggle)
octocatalog-diff 2.1.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid
  • size: 1,356 kB
  • sloc: ruby: 6,097; sh: 16; makefile: 13
file content (36 lines) | stat: -rw-r--r-- 2,527 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# Configuring octocatalog-diff to use Puppet

The most common use of `octocatalog-diff` is to use `puppet` locally to compile catalogs.

In order to successfully use Puppet to compile catalogs:

1. Puppet must be installed on the system.

    It is the goal of `octocatalog-diff` to support Puppet version 3.8 and higher, installed via any means supported by Puppet. This includes the [All-In-One agent package](https://docs.puppet.com/puppet/4.0/reference/release_notes.html#all-in-one-packaging) or installed as a Ruby gem.

    By default, `octocatalog-diff` will look for the Puppet binary in several common system locations.

    For maximum reliability, you can specify the full path to the Puppet binary in the configuration file. For example:

    ```
    ##############################################################################################
    # puppet_binary
    #   This is the full path to the puppet binary on your system. If you don't specify this,
    #   the tool will just run 'puppet' and hope to find it in your path.
    ##############################################################################################

    # settings[:puppet_binary] = '/usr/bin/puppet'
    settings[:puppet_binary] = '/opt/puppetlabs/puppet/bin/puppet'
    ```

1. Applies if you are using [exported resources](https://docs.puppet.com/puppet/latest/reference/lang_exported.html) from PuppetDB (i.e., the octocatalog-diff `--storeconfigs` option enabled):

    Your Puppet installation must have the `puppetdb-termini` feature available. This feature may not be included by default with the Puppet agent package.

    Consult the [Connecting Puppet masters to PuppetDB](https://docs.puppet.com/puppetdb/latest/connect_puppet_master.html#step-1-install-plug-ins) documentation for instructions on installing the `puppetdb-termini` gem.

    :warning: Attention Mac OS users: the [documentation](https://docs.puppet.com/puppet/latest/reference/puppet_collections.html#os-x-systems) states:

    > While the puppet-agent package is the only component of a Puppet Collection available on OS X, you can still use Puppet Collections to ensure the version of package-agent you install is compatible with the Puppet Collection powering your infrastructure.

    Unfortunately this means that you won't be able to enable `--storeconfigs` with the All-In-One Puppet Agent on Mac OS X, unless you manually install a gem-packaged version of `puppetdb-terminus`. The procedure for this is beyond the scope of this documentation.