Skip to content

Commit 5b836f5

Browse files
committed
Adds support for PGDATA changing in config_entry.pp
1 parent 5d4a543 commit 5b836f5

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

manifests/server/config_entry.pp

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,27 @@
8686
notify => Class['postgresql::server::service'],
8787
before => Class['postgresql::server::reload'],
8888
}
89+
} else {
90+
if $name == 'data_directory' {
91+
# We need to force postgresql to stop before updating the data directory
92+
# otherwise init script breaks
93+
exec { "postgresql_${name}":
94+
command => "service ${::postgresql::server::service_name} stop",
95+
onlyif => "service ${::postgresql::server::service_name} status",
96+
unless => "grep 'PGDATA=${value}' /etc/sysconfig/pgsql/postgresql",
97+
path => '/sbin:/bin:/usr/bin:/usr/local/bin',
98+
require => File['/etc/sysconfig/pgsql/postgresql'],
99+
} ->
100+
augeas { 'override PGDATA in /etc/sysconfig/pgsql/postgresql':
101+
lens => 'Shellvars.lns',
102+
incl => '/etc/sysconfig/pgsql/*',
103+
context => '/files/etc/sysconfig/pgsql/postgresql',
104+
changes => "set PGDATA ${value}",
105+
require => File['/etc/sysconfig/pgsql/postgresql'],
106+
notify => Class['postgresql::server::service'],
107+
before => Class['postgresql::server::reload'],
108+
}
109+
}
89110
}
90111
}
91112
}

0 commit comments

Comments
 (0)