Puppet Class: icinga::repos

Defined in:
manifests/repos.pp

Summary

Overview

This class manages the stages stable, testing and snapshot of packages.icinga.com repository and depending on the operating system platform some other repositories.

Examples:

require icinga::repos

Parameters:

  • manage_stable (Boolean)

    Manage the Icinga stable repository. Disabled by setting to ‘false’. Defaults to ‘true’.

  • manage_testing (Boolean)

    Manage the Icinga testing repository to get access to release candidates. Enabled by setting to ‘true’. Defaults to ‘false’.

  • manage_nightly (Boolean)

    Manage the Icinga snapshot repository to get access to nightly snapshots. Enabled by setting to ‘true’. Defaults to ‘false’.

  • configure_backports (Boolean)

    Enables or Disables the backports repository. Has only an effect on plattforms simular to Debian. To configure the backports repo uses apt::backports in hiera.

  • manage_epel (Boolean)

    Manage the EPEL (Extra Packages Enterprise Linux) repository that is needed for some package like newer Boost libraries. Has only an effect on plattforms simular to RedHat Enterprise.

  • manage_powertools (Boolean)

    Manage the PowerTools repository that is needed for some package like nagios-plugins on Linux Enterprise systems like Alma 8, Rocky 8 and CentOS Stream 8.

  • manage_crb (Boolean)

    Manage the CRB repository that is needed for some package like nagios-plugins on Linux Enterprise systems like Alma 9, Rocky 9 and CentOS Stream 9.

  • manage_server_monitoring (Boolean)

    Manage the ‘server:monitoring’ repository on SLES platforms that is needed for some package like monitoring-plugins-common. Additional also the ‘monitoring-plugins’ are provided by this repository. Bye default the repository is added with a lower priority of 120.

  • manage_plugins (Boolean)

    Manage the NETWAYS plugins repository that provides some packages for additional plugins.

  • manage_extras (Boolean)

    Manage the NETWAYS extras repository that provides some packages for extras.



46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# File 'manifests/repos.pp', line 46

class icinga::repos (
  Boolean $manage_stable,
  Boolean $manage_testing,
  Boolean $manage_nightly,
  Boolean $configure_backports,
  Boolean $manage_epel,
  Boolean $manage_powertools,
  Boolean $manage_crb,
  Boolean $manage_server_monitoring,
  Boolean $manage_plugins,
  Boolean $manage_extras,
) {
  $list    =  lookup('icinga::repos', Hash, 'deep', {})
  $managed = {
    icinga-stable-release   => $manage_stable,
    icinga-testing-builds   => $manage_testing,
    icinga-snapshot-builds  => $manage_nightly,
    epel                    => $manage_epel,
    powertools              => $manage_powertools,
    crb                     => $manage_crb,
    server_monitoring       => $manage_server_monitoring,
    netways-plugins-release => $manage_plugins,
    netways-extras-release  => $manage_extras,
  }

  case $facts['os']['family'] {
    'redhat': {
      contain icinga::repos::yum
    }

    'debian': {
      contain icinga::repos::apt
    }

    'suse': {
      contain icinga::repos::zypper
    }

    default: {
      fail('Your plattform is not supported to manage repositories.')
    }
  }
}