a5da52ec52
This code moves all deps to an external class so that Keystone can be installed with mechanisms besides packages (like venv or docker). This also cleans-up the dependency tree by removing false or confusing dependencies. Change-Id: If69cd7cba267f75faad51fdbc80a58b24d2095d8 Co-Author: Clayton O'Neill <clayton.oneill@twcable.com>
59 lines
1.3 KiB
Puppet
59 lines
1.3 KiB
Puppet
# == Class: keystone::db::postgresql
|
|
#
|
|
# Class that configures postgresql for keystone
|
|
# Requires the Puppetlabs postgresql module.
|
|
#
|
|
# == Authors
|
|
#
|
|
# Stackforge Contributors puppet-openstack@puppetlabs.com
|
|
# Etienne Pelletier epelletier@morphlabs.com
|
|
#
|
|
# == Copyright
|
|
#
|
|
# Copyright 2013-2014 Stackforge Contributors
|
|
# Copyright 2012 Etienne Pelletier, unless otherwise noted.
|
|
#
|
|
# === Parameters
|
|
#
|
|
# [*password*]
|
|
# (Required) Password to connect to the database.
|
|
#
|
|
# [*dbname*]
|
|
# (Optional) Name of the database.
|
|
# Defaults to 'keystone'.
|
|
#
|
|
# [*user*]
|
|
# (Optional) User to connect to the database.
|
|
# Defaults to 'keystone'.
|
|
#
|
|
# [*encoding*]
|
|
# (Optional) The charset to use for the database.
|
|
# Default to undef.
|
|
#
|
|
# [*privileges*]
|
|
# (Optional) Privileges given to the database user.
|
|
# Default to 'ALL'
|
|
#
|
|
class keystone::db::postgresql(
|
|
$password,
|
|
$dbname = 'keystone',
|
|
$user = 'keystone',
|
|
$encoding = undef,
|
|
$privileges = 'ALL',
|
|
) {
|
|
|
|
include ::keystone::deps
|
|
|
|
::openstacklib::db::postgresql { 'keystone':
|
|
password_hash => postgresql_password($user, $password),
|
|
dbname => $dbname,
|
|
user => $user,
|
|
encoding => $encoding,
|
|
privileges => $privileges,
|
|
}
|
|
|
|
Anchor['keystone::db::begin']
|
|
~> Class['keystone::db::postgresql']
|
|
~> Anchor['keystone::db::end']
|
|
}
|