X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Froles%2Fmanifests%2Fpostgresql%2Fserver.pp;h=3b6dfcb2dd0c8249b9a7a3d281dc56cc8310786f;hb=4bb48877971815cfb15bc52803bd4c5f0b5f34e4;hp=99a82376b8959c9d7ba098d46a116ec769c8f124;hpb=89f96a62fb093a8f254293472fe93c7164d22765;p=mirror%2Fdsa-puppet.git diff --git a/modules/roles/manifests/postgresql/server.pp b/modules/roles/manifests/postgresql/server.pp index 99a82376b..3b6dfcb2d 100644 --- a/modules/roles/manifests/postgresql/server.pp +++ b/modules/roles/manifests/postgresql/server.pp @@ -1,20 +1,29 @@ # # postgresql server role # -# @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 +# @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 +# @param backups Do backups of the database clusters on this host class roles::postgresql::server( - Boolean $manage_clusters_hba = false, + Variant[Boolean,Array[Integer]] $manage_clusters_hba = false, + Boolean $backups = true, ) { $clusters = $facts['postgresql_clusters'] $clusters.each |$cluster| { $version = $cluster['version'] $cluster_name = $cluster['cluster'] $port = $cluster['port'] + + if $manage_clusters_hba =~ Boolean { + $hba = $manage_clusters_hba + } else { + $hba = $port in $manage_clusters_hba + } postgres::cluster { "${version}::${cluster_name}": pg_version => $version, pg_cluster => $cluster_name, pg_port => $port, - manage_hba => $manage_clusters_hba, + manage_hba => $hba, + backups => $backups, } } }