Split pgsql::database into pgsql::database::create and pgsql::database::populate

refs #6842
This commit is contained in:
Alexander Klimov 2014-08-05 15:15:01 +02:00
parent e42f400f38
commit ccbc1f5aa0
2 changed files with 11 additions and 2 deletions

View File

@ -26,7 +26,7 @@ mysql::database { 'icinga2':
requirement => Package['icinga2-ido-mysql'],
}
pgsql::database { 'icinga':
pgsql::database::populate { 'icinga':
username => 'icinga',
password => 'icingaweb',
schemafile => "/usr/local/src/icinga-pgsql/icinga-${icingaVersion}/module/idoutils/db/pgsql/pgsql.sql",

View File

@ -1,4 +1,4 @@
define pgsql::database ($username, $password, $schemafile, $requirement) {
define pgsql::database::create ($username, $password) {
include pgsql
exec { "create-pgsql-${name}-db":
@ -8,6 +8,15 @@ sudo -u postgres createdb -O ${username} -E UTF8 -T template0 ${name} && \
sudo -u postgres createlang plpgsql ${name}",
require => Service['postgresql']
}
}
define pgsql::database::populate ($username, $password, $schemafile, $requirement) {
include pgsql
pgsql::database::create { "create-pgsql-${name}-db":
username => $username,
password => $password,
}
exec { "populate-${name}-pgsql-db":
unless => "psql -U ${username} -d ${name} -c \"SELECT * FROM icinga_dbversion;\" &> /dev/null",