Puppet Class: collectd::plugin::mcelog

Defined in:
manifests/plugin/mcelog.pp

Overview

Parameters:

  • ensure (Enum['present', 'absent']) (defaults to: 'present')
  • manage_package (Optional[Boolean]) (defaults to: undef)
  • package_install_options (Optional[Array]) (defaults to: $collectd::package_install_options)
  • mceloglogfile (Optional[String]) (defaults to: undef)
  • memory (Collectd::MCELOG::Memory) (defaults to: { 'mcelogclientsocket' => '/var/run/mcelog-client', 'persistentnotification' => false, })


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
37
38
39
# File 'manifests/plugin/mcelog.pp', line 2

class collectd::plugin::mcelog (
  Enum['present', 'absent'] $ensure = 'present',
  Optional[Boolean] $manage_package = undef,
  Optional[Array] $package_install_options = $collectd::package_install_options,
  # Log file option and memory option are mutualy exclusive.
  Optional[String] $mceloglogfile = undef,
  Collectd::MCELOG::Memory $memory = {
    'mcelogclientsocket' => '/var/run/mcelog-client',
    'persistentnotification' => false,
  }
) {
  include collectd

  $_manage_package = pick($manage_package, $collectd::manage_package)

  if $ensure == 'present' {
    $package_ensure = $collectd::package_ensure
  } elsif $ensure == 'absent' {
    $package_ensure = 'absent'
  }

  if $facts['os']['family'] == 'RedHat' {
    if $_manage_package {
      package { 'collectd-mcelog':
        ensure          => $package_ensure,
        install_options => $package_install_options,
      }
    }
  }

  collectd::plugin { 'mcelog':
    ensure  => $ensure,
    content => epp('collectd/plugin/mcelog.conf.epp', {
        'mceloglogfile' => $mceloglogfile,
        'memory'        => $memory
    }),
  }
}