modules/postgresql/manifests/server.pp in freighthop-0.0.6 vs modules/postgresql/manifests/server.pp in freighthop-0.1.0
- old
+ new
@@ -1,93 +1,71 @@
-# Class: postgresql::server
-#
-# == Class: postgresql::server
-# Manages the installation of the postgresql server. manages the package and
-# service.
-#
-# === Parameters:
-# [*package_name*] - name of package
-# [*service_name*] - name of service
-#
-# Configuration:
-# Advanced configuration setting parameters can be placed into 'postgresql_puppet_extras.conf' (located in the same
-# folder as 'postgresql.conf'). You can manage that file as a normal puppet file resource, or however you see fit;
-# which gives you complete control over the settings. Any value you specify in that file will override any existing
-# value set in the templated version.
-#
-# Actions:
-#
-# Requires:
-#
-# Sample Usage:
-#
+# This installs a PostgreSQL server. See README.md for more details.
class postgresql::server (
- $ensure = 'present',
- $package_name = $postgresql::params::server_package_name,
- $package_ensure = 'present',
- $service_name = $postgresql::params::service_name,
- $service_provider = $postgresql::params::service_provider,
- $service_status = $postgresql::params::service_status,
- $config_hash = {},
- $datadir = $postgresql::params::datadir
-) inherits postgresql::params {
+ $ensure = $postgresql::params::ensure,
- if ($ensure == 'absent') {
- service { 'postgresqld':
- ensure => stopped,
- name => $service_name,
- enable => false,
- provider => $service_provider,
- hasstatus => true,
- status => $service_status,
- }->
- package { 'postgresql-server':
- ensure => purged,
- name => $package_name,
- tag => 'postgresql',
- }->
- file { $datadir:
- ensure => absent,
- recurse => true,
- force => true,
- }
- } else {
- package { 'postgresql-server':
- ensure => $package_ensure,
- name => $package_name,
- tag => 'postgresql',
- }
+ $version = $postgresql::params::version,
- $config_class = {
- 'postgresql::config' => $config_hash,
- }
+ $postgres_password = undef,
- create_resources( 'class', $config_class )
+ $package_name = $postgresql::params::server_package_name,
+ $package_ensure = $ensure,
- service { 'postgresqld':
- ensure => running,
- name => $service_name,
- enable => true,
- require => Package['postgresql-server'],
- provider => $service_provider,
- hasstatus => true,
- status => $service_status,
- }
+ $plperl_package_name = $postgresql::params::plperl_package_name,
- if ($postgresql::params::needs_initdb) {
- include postgresql::initdb
+ $service_name = $postgresql::params::service_name,
+ $service_provider = $postgresql::params::service_provider,
+ $service_status = $postgresql::params::service_status,
+ $default_database = $postgresql::params::default_database,
- Package['postgresql-server'] -> Class['postgresql::initdb'] -> Class['postgresql::config'] -> Service['postgresqld']
- }
- else {
- Package['postgresql-server'] -> Class['postgresql::config'] -> Service['postgresqld']
- }
+ $listen_addresses = $postgresql::params::listen_addresses,
+ $ip_mask_deny_postgres_user = $postgresql::params::ip_mask_deny_postgres_user,
+ $ip_mask_allow_all_users = $postgresql::params::ip_mask_allow_all_users,
+ $ipv4acls = $postgresql::params::ipv4acls,
+ $ipv6acls = $postgresql::params::ipv6acls,
- exec { 'reload_postgresql':
- path => '/usr/bin:/usr/sbin:/bin:/sbin',
- command => "service ${service_name} reload",
- onlyif => $service_status,
- refreshonly => true,
- }
- }
+ $initdb_path = $postgresql::params::initdb_path,
+ $createdb_path = $postgresql::params::createdb_path,
+ $psql_path = $postgresql::params::psql_path,
+ $pg_hba_conf_path = $postgresql::params::pg_hba_conf_path,
+ $postgresql_conf_path = $postgresql::params::postgresql_conf_path,
+ $datadir = $postgresql::params::datadir,
+
+ $pg_hba_conf_defaults = $postgresql::params::pg_hba_conf_defaults,
+
+ $user = $postgresql::params::user,
+ $group = $postgresql::params::group,
+
+ $needs_initdb = $postgresql::params::needs_initdb,
+
+ $encoding = $postgresql::params::encoding,
+ $locale = $postgresql::params::locale,
+
+ $manage_firewall = $postgresql::params::manage_firewall,
+ $manage_pg_hba_conf = $postgresql::params::manage_pg_hba_conf,
+ $firewall_supported = $postgresql::params::firewall_supported
+) inherits postgresql::params {
+ $pg = 'postgresql::server'
+
+ if ($ensure == 'present' or $ensure == true) {
+ # Reload has its own ordering, specified by other defines
+ class { "${pg}::reload": require => Class["${pg}::install"] }
+
+ anchor { "${pg}::start": }->
+ class { "${pg}::install": }->
+ class { "${pg}::initdb": }->
+ class { "${pg}::config": }->
+ class { "${pg}::service": }->
+ class { "${pg}::passwd": }->
+ class { "${pg}::firewall": }->
+ anchor { "${pg}::end": }
+ } else {
+ anchor { "${pg}::start": }->
+ class { "${pg}::firewall": }->
+ class { "${pg}::passwd": }->
+ class { "${pg}::service": }->
+ class { "${pg}::install": }->
+ class { "${pg}::initdb": }->
+ class { "${pg}::config": }->
+ anchor { "${pg}::end": }
+ }
}