summaryrefslogtreecommitdiffstats
path: root/puppet-barometer/manifests/db/postgresql.pp
diff options
context:
space:
mode:
Diffstat (limited to 'puppet-barometer/manifests/db/postgresql.pp')
-rw-r--r--puppet-barometer/manifests/db/postgresql.pp55
1 files changed, 55 insertions, 0 deletions
diff --git a/puppet-barometer/manifests/db/postgresql.pp b/puppet-barometer/manifests/db/postgresql.pp
new file mode 100644
index 00000000..35d9b58b
--- /dev/null
+++ b/puppet-barometer/manifests/db/postgresql.pp
@@ -0,0 +1,55 @@
+# == Class: barometer::db::postgresql
+#
+# Class that configures postgresql for barometer
+# Requires the Puppetlabs postgresql module.
+#
+# === Parameters
+#
+# [*password*]
+# (Required) Password to connect to the database.
+#
+# [*dbname*]
+# (Optional) Name of the database.
+# Defaults to 'barometer'.
+#
+# [*user*]
+# (Optional) User to connect to the database.
+# Defaults to 'barometer'.
+#
+# [*encoding*]
+# (Optional) The charset to use for the database.
+# Default to undef.
+#
+# [*privileges*]
+# (Optional) Privileges given to the database user.
+# Default to 'ALL'
+#
+# == Dependencies
+#
+# == Examples
+#
+# == Authors
+#
+# == Copyright
+#
+class barometer::db::postgresql(
+ $password,
+ $dbname = 'barometer',
+ $user = 'barometer',
+ $encoding = undef,
+ $privileges = 'ALL',
+) {
+
+ Class['barometer::db::postgresql'] -> Service<| title == 'barometer' |>
+
+ ::openstacklib::db::postgresql { 'barometer':
+ password_hash => postgresql_password($user, $password),
+ dbname => $dbname,
+ user => $user,
+ encoding => $encoding,
+ privileges => $privileges,
+ }
+
+ ::Openstacklib::Db::Postgresql['barometer'] ~> Exec<| title == 'barometer-manage db_sync' |>
+
+}