puppet-heat/manifests/db/mysql.pp
Takashi Kajinami 1de8cdd7a4 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: I1e0061aea6782bd61e745bb39683589794231a5f
2020-05-19 20:00:03 +09:00

64 lines
1.4 KiB
Puppet

# == Class: heat::db::mysql
#
# The heat::db::mysql class creates a MySQL database for heat.
# 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 'heat'.
#
# [*user*]
# (Optional) User to connect to the database.
# Defaults to 'heat'.
#
# [*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 collate.
# Only used with mysql modules >= 2.2.
# Defaults to 'utf8_general_ci'
#
class heat::db::mysql(
$password,
$dbname = 'heat',
$user = 'heat',
$host = '127.0.0.1',
$allowed_hosts = undef,
$charset = 'utf8',
$collate = 'utf8_general_ci',
) {
include heat::deps
validate_legacy(String, 'validate_string', $password)
::openstacklib::db::mysql { 'heat':
user => $user,
password => $password,
dbname => $dbname,
host => $host,
charset => $charset,
collate => $collate,
allowed_hosts => $allowed_hosts,
}
Anchor['heat::db::begin']
~> Class['heat::db::mysql']
~> Anchor['heat::db::end']
}