roles::snapshot_db: make packages ignore conditional on running on buster
[mirror/dsa-puppet.git] / modules / roles / manifests / snapshot_db.pp
1 # db server providing (secondary) snapshot databases
2 #
3 # @param db_port          port of the snapshot cluster
4 # @param guest_addresses  addresses to allow for the guest account
5 class roles::snapshot_db (
6   Integer $db_port,
7   Array[Stdlib::IP::Address] $guest_addresses = ['127.0.0.1', '::1'],
8 ) {
9   $now = Timestamp()
10   $date = $now.strftime('%F')
11
12   if versioncmp($::lsbmajdistrelease, '9') <= 0 {
13     $ensure = 'absent'
14   } elsif versioncmp($date, '2020-01-15') <= 0 {
15     $ensure = 'present'
16   } else {
17     $ensure = 'absent'
18     notify {'Temporary old pg ignore rule expired, clean up puppet':
19       loglevel => warning,
20     }
21   }
22   file { '/etc/nagios/obsolete-packages-ignore.d/puppet-postgres':
23     ensure  => $ensure,
24     content => @(EOF),
25       libperl5.24:amd64
26       postgresql-client-9.6
27       postgresql-contrib-9.6
28       perl-modules-5.24
29       postgresql-plperl-9.6
30       postgresql-9.6-debversion
31       libgdbm3:amd64
32       postgresql-9.6
33       | EOF
34   }
35
36
37   postgres::cluster::hba_entry { 'snapshot-guest':
38     pg_port  => $db_port,
39     database => 'snapshot',
40     user     => 'guest',
41     address  => $guest_addresses,
42     method   => 'trust',
43   }
44
45
46 }