Puppet Class: prometheus::node_openstack_stale_puppet_certs

Defined in:
modules/prometheus/manifests/node_openstack_stale_puppet_certs.pp

Overview

SPDX-License-Identifier: Apache-2.0

Parameters:

  • outfile (Stdlib::Unixpath) (defaults to: '/var/lib/prometheus/node.d/openstack_stale_puppet_certs.prom')


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
# File 'modules/prometheus/manifests/node_openstack_stale_puppet_certs.pp', line 2

class prometheus::node_openstack_stale_puppet_certs (
    Stdlib::Unixpath $outfile = '/var/lib/prometheus/node.d/openstack_stale_puppet_certs.prom',
) {
    if $outfile !~ '\.prom$' {
        fail("outfile (${outfile}): Must have a .prom extension")
    }

    ensure_packages('python3-prometheus-client')

    file { '/usr/local/sbin/prometheus-openstack-stale-puppet-certs':
        ensure => file,
        mode   => '0500',
        owner  => 'root',
        group  => 'root',
        source => 'puppet:///modules/prometheus/usr/local/bin/prometheus-openstack-stale-puppet-certs.py',
    }

    file { '/usr/local/sbin/clean-stale-puppet-certs':
        ensure => file,
        mode   => '0500',
        owner  => 'root',
        group  => 'root',
        source => 'puppet:///modules/prometheus/usr/local/bin/clean-stale-puppet-certs.py',
    }

    systemd::timer::job { 'prometheus_openstack_stale_puppet_certs':
        ensure      => present,
        description => 'Regular job to collect information about stale Puppet certificates',
        user        => 'root',
        command     => "/usr/local/sbin/prometheus-openstack-stale-puppet-certs --outfile ${outfile}",
        interval    => {'start' => 'OnUnitInactiveSec', 'interval' => '10m'},
    }
}