2 # postgresql server role
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 class roles::postgresql::server(
6 Variant[Boolean,Array[Integer]] $manage_clusters_hba = false,
8 $clusters = $facts['postgresql_clusters']
9 $clusters.each |$cluster| {
10 $version = $cluster['version']
11 $cluster_name = $cluster['cluster']
12 $port = $cluster['port']
14 if $manage_clusters_hba =~ Boolean {
15 $hba = $manage_clusters_hba
17 $hba = $port in $manage_clusters_hba
19 postgres::cluster { "${version}::${cluster_name}":
20 pg_version => $version,
21 pg_cluster => $cluster_name,