Puppet Class: confdroid_postgresql::bouncer::bouncer

Inherits:
confdroid_postgresql::params
Defined in:
manifests/bouncer/bouncer.pp

Summary

Class manages the pgbouncer service

Overview

confdroid_postgresql::bouncer::bouncer.pp Module name: confdroid_postgresql Author: 12ww1160 (12ww1160@confdroid.com) }

Examples:

confdroid_postgresql::bouncer::bouncer_rule { ‘test connection’:

pl_bouncer_db_name    => 'test',
pl_bouncer_host       => '127.0.0.7',
pl_bouncer_host_port  => '5432',
pl_bouncer_user       => 'test_user',
pl_bouncer_order      => '001',


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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'manifests/bouncer/bouncer.pp', line 13

class confdroid_postgresql::bouncer::bouncer (

) inherits confdroid_postgresql::params {
  if ($fqdn == $pl_server_fqdn) and ($pl_use_pg_bouncer == true) {
    # ensure directory exists
    file { $pl_bouncer_dir:
      ensure   => directory,
      owner    => 'root',
      group    => 'root',
      mode     => '0750',
      selrange => s0,
      selrole  => object_r,
      seltype  => etc_t,
      seluser  => system_u,
    }
    # create auth user file to be populated through placeholder
    file { $pl_bouncer_auth_file:
      ensure   => file,
      owner    => 'pgbouncer',
      group    => 'pgbouncer',
      mode     => '0440',
      selrange => s0,
      selrole  => object_r,
      seltype  => etc_t,
      seluser  => system_u,
      content  => template($pl_bouncer_auth_erb),
    }

    # create the pgbouncer.ini file
    concat { $pl_bouncer_ini_file:
      ensure => present,
      owner  => 'pgbouncer',
      mode   => '0600',
      #notify => Service[$pl_service],
    }

    # manage file header
    concat::fragment { 'bouncer_header':
      target  => $pl_bouncer_ini_file,
      content => template($pl_bouncer_ini_erb),
      order   => '000',
    }
  }
}