Changeset View
Changeset View
Standalone View
Standalone View
site-modules/profile/manifests/devel/postgres.pp
# Profile to install development postgresql packages | |||||
class profile::devel::postgres { | class profile::devel::postgres { | ||||
$packages = lookup('packages::devel::postgres', Array, 'unique') | $packages = lookup('packages::devel::postgres', Array, 'unique') | ||||
package { $packages: | package { $packages: | ||||
ensure => present, | ensure => present, | ||||
} | } | ||||
$dbs = lookup('swh::postgres::service::dbs', Array, 'deep') | |||||
# Explicitly install the configuration files per user's home | |||||
# TL;DR the pgpass must be readonly per user so we can't use the global one | |||||
$users = lookup('swh::postgres::service::users', Array, 'deep') | |||||
each ($users) | $user | { | |||||
if $user == 'root' { | |||||
$home = '/root' | |||||
} else { | |||||
$home = "/home/${user}" | |||||
} | |||||
file {"${home}/.pg_service.conf": | |||||
ensure => file, | |||||
content => template('profile/postgres/pg_service.conf.erb'), | |||||
owner => $user, | |||||
group => $user, | |||||
mode => '0400', | |||||
} | |||||
file {"${home}/.pgpass": | |||||
ensure => file, | |||||
content => template('profile/postgres/pgpass.conf.erb'), | |||||
owner => $user, | |||||
group => $user, | |||||
mode => '0400', | |||||
} | |||||
} | |||||
} | } |