Puppet Class: collectd::package

Defined in:
manifests/package.pp

Overview

Class: collectd

Installs the collectd package and declares virtual resources for each dependency package defined in ‘collectd::setup::settings`.

Parameters:

[*version*]:        - Specify package version to install, by default
                      installs whatever version the package manager prefers.
[*manage_package*]: - If package installation must be managed by this
                      module. Defaults to true.
[*install_utils*]:  - If collectd-utils package must be installed or not.
                      Defaults to true.

Parameters:

  • version (Any) (defaults to: 'present')
  • manage_package (Any) (defaults to: true)
  • install_utils (Any) (defaults to: true)


14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'manifests/package.pp', line 14

class collectd::package(
  $version='present',
  $manage_package = true,
  $install_utils  = true
) {

  include '::collectd::setup::settings'

  validate_bool($manage_package)

  if $manage_package {

    package { 'collectd':
      ensure => $version,
    }

    if ($::osfamily == 'Debian') {
      package { 'collectd-core': ensure => $version }
    }

    if $install_utils {
      package { 'collectd-utils': ensure => $version }

      if ($::osfamily == 'RedHat') {
        package { 'libcollectdclient': ensure => $version }
      }
      if ($::osfamily == 'Debian') {
        if versioncmp($::operatingsystemmajrelease, '6') > 0 {
          package { 'libmnl0':
            ensure => 'present',
            before => Package['collectd','collectd-core'],
          }
        }
        package { 'libcollectdclient1': ensure => $version }
      }
    }

    validate_re($::osfamily, 'Debian|RedHat',
      "Support for \$osfamily '${::osfamily}' not yet implemented.")

    $plugindeps = $collectd::setup::settings::plugindeps

    validate_hash($plugindeps)

    $deplist = unique(flatten(values($plugindeps)))

    validate_array($deplist)

    $dep_ensure = $version ? {
      'absent' => 'absent',
      default  => 'present',
    }

  }
}