# == 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, $dbname = $title, $user = $title, $encoding = undef, $privileges = 'ALL', ){ if ((($::operatingsystem == 'RedHat' or $::operatingsystem == 'CentOS') and (versioncmp($::operatingsystemmajrelease, '6') <= 0)) or ($::operatingsystem == 'Fedora' and (versioncmp($::operatingsystemmajrelease, '14') <= 0))) { 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 { $dbname: user => $user, password => $password_hash, encoding => $encoding, grant => $privileges, } }