diff --git a/manifests/server/instance_reload.pp b/manifests/server/instance_reload.pp new file mode 100644 index 0000000000..ce63ecc864 --- /dev/null +++ b/manifests/server/instance_reload.pp @@ -0,0 +1,14 @@ +# @param service_reload Overrides the default reload command for your PostgreSQL service. +# @param service_status Overrides the default status check command for your PostgreSQL service. +define postgresql::server::instance_reload ( + $service_status = $postgresql::server::service_status, + $service_reload = $postgresql::server::service_reload, +) { + exec { 'postgresql_reload': + path => '/usr/bin:/usr/sbin:/bin:/sbin', + command => $service_reload, + onlyif => $service_status, + refreshonly => true, + require => Class['postgresql::server::service'], + } +} diff --git a/manifests/server/reload.pp b/manifests/server/reload.pp index 28a5346ff3..babc2dbad7 100644 --- a/manifests/server/reload.pp +++ b/manifests/server/reload.pp @@ -1,13 +1,7 @@ # @api private class postgresql::server::reload { - $service_status = $postgresql::server::service_status - $service_reload = $postgresql::server::service_reload - - exec { 'postgresql_reload': - path => '/usr/bin:/usr/sbin:/bin:/sbin', - command => $service_reload, - onlyif => $service_status, - refreshonly => true, - require => Class['postgresql::server::service'], + postgresql::server::instance_reload { 'main': + service_status => $postgresql::server::service_status, + service_reload => $postgresql::server::service_reload, } } diff --git a/spec/defines/server/instance_reload.rb b/spec/defines/server/instance_reload.rb new file mode 100644 index 0000000000..e7ecac8e5f --- /dev/null +++ b/spec/defines/server/instance_reload.rb @@ -0,0 +1,23 @@ +# frozen_string_literal: true + +require 'spec_helper' + +describe 'postgresql::server::instance_reload' do + let(:title) { 'main' } + + on_supported_os.each do |os, os_facts| + context "on #{os}" do + let :facts do + os_facts + end + + let :pre_condition do + "class {'postgresql::server':}" + end + + context 'with defaults from server class' do + it { is_expected.to compile.with_all_deps } + end + end + end +end