diff options
Diffstat (limited to 'puppet-barometer/manifests/db/mysql.pp')
-rw-r--r-- | puppet-barometer/manifests/db/mysql.pp | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/puppet-barometer/manifests/db/mysql.pp b/puppet-barometer/manifests/db/mysql.pp new file mode 100644 index 00000000..c9284082 --- /dev/null +++ b/puppet-barometer/manifests/db/mysql.pp @@ -0,0 +1,69 @@ +# The barometer::db::mysql class implements mysql backend for barometer +# +# This class can be used to create tables, users and grant +# privilege for a mysql barometer database. +# +# == parameters +# +# [*password*] +# (Mandatory) Password to connect to the database. +# Defaults to 'false'. +# +# [*dbname*] +# (Optional) Name of the database. +# Defaults to 'barometer'. +# +# [*user*] +# (Optional) User to connect to the database. +# Defaults to 'barometer'. +# +# [*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' +# +# == Dependencies +# Class['mysql::server'] +# +# == Examples +# +# == Authors +# +# == Copyright +# +class barometer::db::mysql( + $password, + $dbname = 'barometer', + $user = 'barometer', + $host = '127.0.0.1', + $charset = 'utf8', + $collate = 'utf8_general_ci', + $allowed_hosts = undef +) { + + validate_string($password) + + ::openstacklib::db::mysql { 'barometer': + user => $user, + password_hash => mysql_password($password), + dbname => $dbname, + host => $host, + charset => $charset, + collate => $collate, + allowed_hosts => $allowed_hosts, + } + + ::Openstacklib::Db::Mysql['barometer'] ~> Exec<| title == 'barometer-manage db_sync' |> +} |