pg config on ullmann, pt 1
[mirror/dsa-puppet.git] / modules / roles / manifests / postgresql / server.pp
1 #
2 # postgresql server role
3 #
4 # @param manage_clusters_hba  manage clusters' pg_hba.conf using postgres::cluster.  Eventually should should be true for every host and we can drop the param
5 # @param backups              Do backups of the database clusters on this host
6 class roles::postgresql::server(
7   Variant[Boolean,Array[Integer]] $manage_clusters_hba = false,
8   Boolean $backups = true,
9 ) {
10   $clusters = $facts['postgresql_clusters']
11   $clusters.each |$cluster| {
12     $version      = $cluster['version']
13     $cluster_name = $cluster['cluster']
14     $port         = $cluster['port']
15
16     if $manage_clusters_hba =~ Boolean {
17       $hba = $manage_clusters_hba
18     } else {
19       $hba = $port in $manage_clusters_hba
20     }
21     postgres::cluster { "${version}::${cluster_name}":
22       pg_version => $version,
23       pg_cluster => $cluster_name,
24       pg_port    => $port,
25       manage_hba => $hba,
26       backups    => $backups,
27     }
28   }
29 }