2014-07-15 14:30:20 -07:00
# = = Definition: openstacklib: : db: : postgresql
#
# This resource configures a postgresql database for an OpenStack service
#
# = = Parameters:
#
# [ * password_hash* ]
# Password hash to use for the database user for this service;
# string ; required
#
# [ * dbname* ]
# The name of the database
# string ; optional; default to the $ title of the resource, i. e. 'nova'
#
# [ * user* ]
# The database user to create;
# string ; optional; default to the $ title of the resource, i. e. 'nova'
#
# [ * encoding* ]
# The charset to use for the database;
# string ; optional; default to undef
#
# [ * privileges* ]
# Privileges given to the database user;
# string or array of strings; optional; default to 'ALL'
define openstacklib: : db: : postgresql (
$ password_hash,
$db name = $ title,
$ user = $ title,
$e ncoding = undef,
$ privileges = 'ALL' ,
) {
2015-03-31 11:54:23 +02:00
if ( ( ( $ : : operatingsystem = = 'RedHat' or $ : : operatingsystem = = 'CentOS' ) and ( versioncmp( $ : : operatingsystemmajrelease, '6' ) < = 0 ) )
or ( $ : : operatingsystem = = 'Fedora' and ( versioncmp( $ : : operatingsystemmajrelease, '14' ) < = 0 ) ) ) {
2014-07-15 14:30:20 -07:00
warning( 'The system packages handling the postgresql infrastructure for OpenStack are out of date and should not be relied on for database migrations.' )
}
postgresql: : server: : db { $db name:
user = > $ user,
password = > $ password_hash,
encoding = > $e ncoding,
grant = > $ privileges,
}
}