manage danzi/debconf pg_hba
[mirror/dsa-puppet.git] / modules / roles / manifests / debconf_wafer.pp
1 # debconf's wafer role
2
3 # @param db_address     hostname of the postgres server for this service
4 # @param db_port        port of the postgres server for this service
5 class roles::debconf_wafer (
6   String  $db_address,
7   Integer $db_port,
8 ) {
9   include apache2
10   include apache2::ssl
11   include apache2::expires
12
13   include roles::sso_rp
14
15   package { 'libapache2-mod-wsgi-py3': ensure => installed, }
16   apache2::module { 'wsgi': require => Package['libapache2-mod-wsgi-py3'] }
17
18   ssl::service { 'wafertest.debconf.org':
19     notify => Exec['service apache2 reload'],
20     key    => true,
21   }
22   apache2::site { '010-wafertest.debconf.org':
23     site   => 'wafertest.debconf.org',
24     source => 'puppet:///modules/roles/debconf_wafer/wafertest.debconf.org',
25   }
26
27   ssl::service { 'debconf18.debconf.org':
28     ensure => absent,
29     notify => Exec['service apache2 reload'],
30     key    => true,
31   }
32   apache2::site { '010-debconf18.debconf.org':
33     ensure => absent,
34     site   => 'debconf18.debconf.org',
35   }
36
37   ssl::service { 'debconf19.debconf.org':
38     notify => Exec['service apache2 reload'],
39     key    => true,
40   }
41   apache2::site { '010-debconf19.debconf.org':
42     site   => 'debconf19.debconf.org',
43     source => 'puppet:///modules/roles/debconf_wafer/debconf19.debconf.org',
44   }
45
46   ssl::service { 'debconf20.debconf.org':
47     notify => Exec['service apache2 reload'],
48     key    => true,
49   }
50   apache2::site { '010-debconf20.debconf.org':
51     site   => 'debconf20.debconf.org',
52     source => 'puppet:///modules/roles/debconf_wafer/debconf20.debconf.org',
53   }
54
55   @@postgres::cluster::hba_entry { "debconf-wafer-${::fqdn}":
56     tag      => "postgres::cluster::${db_port}::hba::${db_address}",
57     pg_port  => $db_port,
58     user     => ['debconf18', 'debconf19', 'debconf20', 'wafertest'],
59     database => 'sameuser',
60     address  => $base::public_addresses,
61   }
62 }
63