+ unless empty($ldap_filter) {
+ concat { "/etc/pgbouncer/pgbouncer.ini":
+ mode => "0644",
+ owner => "root",
+ group => "root",
+ ensure_newline => true,
+ notify => Service["pgbouncer"],
+ }
+
+ concat::fragment { "pgbouncer_head":
+ target => "/etc/pgbouncer/pgbouncer.ini",
+ order => "01",
+ content => template("role/backup/pgbouncer.ini.erb"),
+ }
+
+ file { "/etc/systemd/system/pgbouncer.service.d":
+ ensure => "directory",
+ mode => "0644",
+ owner => "root",
+ group => "root",
+ }
+
+ file { "/etc/systemd/system/pgbouncer.service.d/override.conf":
+ ensure => "present",
+ mode => "0644",
+ owner => "root",
+ group => "root",
+ content => "[Service]\nUser=\nUser=$pg_user\n",
+ notify => Service["pgbouncer"],
+ }
+
+ service { "pgbouncer":
+ ensure => "running",
+ enable => true,
+ require => [
+ Package["pgbouncer"],
+ File["/etc/systemd/system/pgbouncer.service.d/override.conf"],
+ Concat["/etc/pgbouncer/pgbouncer.ini"]
+ ],
+ }
+
+ file { "/etc/pam_ldap.d":
+ ensure => directory,
+ mode => "0755",
+ owner => "root",
+ group => "root",
+ } ->
+ file { "/etc/pam_ldap.d/pgbouncer.conf":
+ ensure => "present",
+ mode => "0600",
+ owner => $pg_user,
+ group => "root",
+ content => template("role/backup/pam_ldap_pgbouncer.conf.erb"),
+ } ->
+ file { "/etc/pam.d/pgbouncer":
+ ensure => "present",
+ mode => "0644",
+ owner => "root",
+ group => "root",
+ source => "puppet:///modules/role/backup/pam_pgbouncer"
+ }
+ }
+ }