diff --git a/manifests/client.pp b/manifests/client.pp index 000d406..7e6da1c 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -1,25 +1,25 @@ # Install client cli tool. See README.md for more details. class postgresql::client ( - Enum['file', 'absent'] $file_ensure = 'file', - Stdlib::Absolutepath $validcon_script_path = $postgresql::params::validcon_script_path, - String[1] $package_name = $postgresql::params::client_package_name, - Enum['present', 'absent', 'latest'] $package_ensure = 'present' + Enum['file', 'absent'] $file_ensure = 'file', + Stdlib::Absolutepath $validcon_script_path = $postgresql::params::validcon_script_path, + String[1] $package_name = $postgresql::params::client_package_name, + String[1] $package_ensure = 'present' ) inherits postgresql::params { if $package_name != 'UNSET' { package { 'postgresql-client': ensure => $package_ensure, name => $package_name, tag => 'postgresql', } } file { $validcon_script_path: ensure => $file_ensure, source => 'puppet:///modules/postgresql/validate_postgresql_connection.sh', owner => 0, group => 0, mode => '0755', } } diff --git a/manifests/lib/devel.pp b/manifests/lib/devel.pp index 9c83c7e..e6ff183 100644 --- a/manifests/lib/devel.pp +++ b/manifests/lib/devel.pp @@ -1,28 +1,28 @@ # This class installs postgresql development libraries. See README.md for more # details. class postgresql::lib::devel( - String $package_name = $postgresql::params::devel_package_name, - Enum['present', 'absent', 'latest', 'installed'] $package_ensure = 'present', - Boolean $link_pg_config = $postgresql::params::link_pg_config + String $package_name = $postgresql::params::devel_package_name, + String[1] $package_ensure = 'present', + Boolean $link_pg_config = $postgresql::params::link_pg_config ) inherits postgresql::params { if $::osfamily == 'Gentoo' { fail('osfamily Gentoo does not have a separate "devel" package, postgresql::lib::devel is not supported') } package { 'postgresql-devel': ensure => $package_ensure, name => $package_name, tag => 'postgresql', } if $link_pg_config { if ( $postgresql::params::bindir != '/usr/bin' and $postgresql::params::bindir != '/usr/local/bin') { file { '/usr/bin/pg_config': ensure => link, target => "${postgresql::params::bindir}/pg_config", } } } } diff --git a/manifests/lib/docs.pp b/manifests/lib/docs.pp index 4b92b77..f3c31ff 100644 --- a/manifests/lib/docs.pp +++ b/manifests/lib/docs.pp @@ -1,14 +1,14 @@ # This class installs the postgresql-docs See README.md for more # details. class postgresql::lib::docs ( - String $package_name = $postgresql::params::docs_package_name, - Enum['present', 'absent', 'latest', 'installed'] $package_ensure = 'present', + String $package_name = $postgresql::params::docs_package_name, + String[1] $package_ensure = 'present', ) inherits postgresql::params { package { 'postgresql-docs': ensure => $package_ensure, name => $package_name, tag => 'postgresql', } } diff --git a/manifests/lib/java.pp b/manifests/lib/java.pp index fe43dd7..dc131d5 100644 --- a/manifests/lib/java.pp +++ b/manifests/lib/java.pp @@ -1,14 +1,14 @@ # This class installs the postgresql jdbc connector. See README.md for more # details. class postgresql::lib::java ( - String $package_name = $postgresql::params::java_package_name, - Enum['present', 'absent', 'latest', 'installed'] $package_ensure = 'present' + String $package_name = $postgresql::params::java_package_name, + String[1] $package_ensure = 'present' ) inherits postgresql::params { package { 'postgresql-jdbc': ensure => $package_ensure, name => $package_name, tag => 'postgresql', } } diff --git a/manifests/lib/perl.pp b/manifests/lib/perl.pp index 6ed2853..67fd4a2 100644 --- a/manifests/lib/perl.pp +++ b/manifests/lib/perl.pp @@ -1,13 +1,13 @@ # This class installs the perl libs for postgresql. See README.md for more # details. class postgresql::lib::perl( - $package_name = $postgresql::params::perl_package_name, - $package_ensure = 'present' + String $package_name = $postgresql::params::perl_package_name, + String[1] $package_ensure = 'present' ) inherits postgresql::params { package { 'perl-DBD-Pg': ensure => $package_ensure, name => $package_name, } } diff --git a/manifests/lib/python.pp b/manifests/lib/python.pp index bfe0585..590727d 100644 --- a/manifests/lib/python.pp +++ b/manifests/lib/python.pp @@ -1,13 +1,13 @@ # This class installs the python libs for postgresql. See README.md for more # details. class postgresql::lib::python( - $package_name = $postgresql::params::python_package_name, - $package_ensure = 'present' + String[1] $package_name = $postgresql::params::python_package_name, + String[1] $package_ensure = 'present' ) inherits postgresql::params { package { 'python-psycopg2': ensure => $package_ensure, name => $package_name, } } diff --git a/manifests/server/contrib.pp b/manifests/server/contrib.pp index 46121e6..7e3426b 100644 --- a/manifests/server/contrib.pp +++ b/manifests/server/contrib.pp @@ -1,22 +1,22 @@ # Install the contrib postgresql packaging. See README.md for more details. class postgresql::server::contrib ( - String $package_name = $postgresql::params::contrib_package_name, - Enum['present', 'absent', 'latest', 'installed'] $package_ensure = 'present' + String $package_name = $postgresql::params::contrib_package_name, + String[1] $package_ensure = 'present' ) inherits postgresql::params { if $::osfamily == 'Gentoo' { fail('osfamily Gentoo does not have a separate "contrib" package, postgresql::server::contrib is not supported.') } package { 'postgresql-contrib': ensure => $package_ensure, name => $package_name, tag => 'postgresql', } anchor { 'postgresql::server::contrib::start': } -> Class['postgresql::server::install'] -> Package['postgresql-contrib'] -> Class['postgresql::server::service'] anchor { 'postgresql::server::contrib::end': } } diff --git a/manifests/server/extension.pp b/manifests/server/extension.pp index 1c9b684..6d28783 100644 --- a/manifests/server/extension.pp +++ b/manifests/server/extension.pp @@ -1,61 +1,61 @@ # Activate an extension on a postgresql database define postgresql::server::extension ( $database, - $extension = $name, - $ensure = 'present', - $package_name = undef, - $package_ensure = undef, + $extension = $name, + String[1] $ensure = 'present', + $package_name = undef, + $package_ensure = undef, $connect_settings = $postgresql::server::default_connect_settings, ) { - $user = $postgresql::server::user - $group = $postgresql::server::group - $psql_path = $postgresql::server::psql_path + $user = $postgresql::server::user + $group = $postgresql::server::group + $psql_path = $postgresql::server::psql_path case $ensure { 'present': { $command = "CREATE EXTENSION \"${extension}\"" $unless_comp = '=' $package_require = [] $package_before = Postgresql_psql["Add ${extension} extension to ${database}"] } 'absent': { $command = "DROP EXTENSION \"${extension}\"" $unless_comp = '!=' $package_require = Postgresql_psql["Add ${extension} extension to ${database}"] $package_before = [] } default: { fail("Unknown value for ensure '${ensure}'.") } } postgresql_psql {"Add ${extension} extension to ${database}": psql_user => $user, psql_group => $group, psql_path => $psql_path, connect_settings => $connect_settings, db => $database, command => $command, unless => "SELECT t.count FROM (SELECT count(extname) FROM pg_extension WHERE extname = '${extension}') as t WHERE t.count ${unless_comp} 1", require => Postgresql::Server::Database[$database], } if $package_name { $_package_ensure = $package_ensure ? { undef => $ensure, default => $package_ensure, } ensure_packages($package_name, { ensure => $_package_ensure, tag => 'postgresql', require => $package_require, before => $package_before, }) } } diff --git a/manifests/server/postgis.pp b/manifests/server/postgis.pp index 86a6927..a4e4321 100644 --- a/manifests/server/postgis.pp +++ b/manifests/server/postgis.pp @@ -1,23 +1,23 @@ # Install the postgis postgresql packaging. See README.md for more details. class postgresql::server::postgis ( - String $package_name = $postgresql::params::postgis_package_name, - Enum['present', 'absent', 'latest', 'installed'] $package_ensure = 'present' + String $package_name = $postgresql::params::postgis_package_name, + String[1] $package_ensure = 'present' ) inherits postgresql::params { package { 'postgresql-postgis': ensure => $package_ensure, name => $package_name, tag => 'postgresql', } anchor { 'postgresql::server::postgis::start': } -> Class['postgresql::server::install'] -> Package['postgresql-postgis'] -> Class['postgresql::server::service'] -> anchor { 'postgresql::server::postgis::end': } if $postgresql::globals::manage_package_repo { Class['postgresql::repo'] -> Package['postgresql-postgis'] } }