Puppet Class: profile::prometheus::node_directory_size

Defined in:
modules/profile/manifests/prometheus/node_directory_size.pp

Overview

Parameters:

  • ensure (Wmflib::Ensure) (defaults to: lookup('profile::prometheus::node_directory_size::ensure', { 'default_value' => 'present'}))
  • directory_size_paths (Hash) (defaults to: lookup('profile::prometheus::node_directory_size::directory_size_paths', {'default_value' => {}}))
  • outfile (Stdlib::Unixpath) (defaults to: lookup('profile::prometheus::node_directory_size::outfile', {'default_value' => '/var/lib/prometheus/node.d/node_directory_size_bytes'}))


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
# File 'modules/profile/manifests/prometheus/node_directory_size.pp', line 15

class profile::prometheus::node_directory_size (
    Wmflib::Ensure   $ensure               = lookup('profile::prometheus::node_directory_size::ensure', { 'default_value' => 'present'}),
    Hash             $directory_size_paths = lookup('profile::prometheus::node_directory_size::directory_size_paths', {'default_value' => {}}),
    Stdlib::Unixpath $outfile              = lookup('profile::prometheus::node_directory_size::outfile', {'default_value' => '/var/lib/prometheus/node.d/node_directory_size_bytes'}),
){

  if ($ensure == 'absent') {
    file { "${outfile}.prom":
      ensure => 'absent'
    }
  }

  file { '/usr/local/bin/prometheus-directory-size':
    ensure => $ensure,
    mode   => '0555',
    owner  => 'root',
    group  => 'root',
    source => 'puppet:///modules/profile/prometheus/node-directory-size.sh'
  }

  file { '/etc/default/prometheus-directory-size':
    ensure  => $ensure,
    mode    => '0555',
    owner   => 'root',
    group   => 'root',
    content => template('profile/prometheus/node-directory-size.erb')
  }

  # Collect once a day
  systemd::timer::job { 'prometheus_directorysize':
    ensure      => $ensure,
    description => 'Regular jobs to export directory sizes',
    user        => 'root',
    command     => '/usr/local/bin/prometheus-directory-size -c /etc/default/prometheus-directory-size',
    interval    => {'start' => 'OnCalendar', 'interval' => '*-*-* 3:30:00'},
  }
}