puppet-ceilometer/manifests/db/mysql.pp
Takashi Kajinami f562e27069 Remove password hash generation in each puppet modules
... and migrate it to openstacklib so that all logics about database
configuration are implemented in one common place.

Depends-on: https://review.opendev.org/#/c/728595/
Change-Id: I6a46e45b8af4c8c1cdf7913bc625b57e49a79687
2020-05-19 19:40:36 +09:00

63 lines
1.5 KiB
Puppet

# == Class: ceilometer::db::mysql
#
# The ceilometer::db::mysql class creates a MySQL database for ceilometer.
# It must be used on the MySQL server
#
# === Parameters:
#
# [*password*]
# (Required) password to connect to the database.
#
# [*dbname*]
# (Optional) name of the database.
# Defaults to ceilometer.
#
# [*user*]
# (Optional) user to connect to the database.
# Defaults to ceilometer.
#
# [*host*]
# (Optional) the default source host user is allowed to connect from.
# Defaults to '127.0.0.1'.
#
# [*allowed_hosts*]
# (Optional) other hosts the user is allowed to connect from.
# Defaults to undef.
#
# [*charset*]
# (Optional) the database charset.
# Defaults to 'utf8'.
#
# [*collate*]
# (Optional) the database collation.
# Defaults to 'utf8_general_ci'.
#
class ceilometer::db::mysql(
$password,
$dbname = 'ceilometer',
$user = 'ceilometer',
$host = '127.0.0.1',
$allowed_hosts = undef,
$charset = 'utf8',
$collate = 'utf8_general_ci',
) {
include ceilometer::deps
validate_legacy(String, 'validate_string', $password)
openstacklib::db::mysql { 'ceilometer':
user => $user,
password => $password,
dbname => $dbname,
host => $host,
charset => $charset,
collate => $collate,
allowed_hosts => $allowed_hosts,
}
Anchor['ceilometer::db::begin']
~> Class['ceilometer::db::mysql']
~> Anchor['ceilometer::db::end']
}