]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - 3rdparty/modules/nova/manifests/db/mysql.pp
try again, with puppetforge modules, correctly included now
[dsa-puppet.git] / 3rdparty / modules / nova / manifests / db / mysql.pp
diff --git a/3rdparty/modules/nova/manifests/db/mysql.pp b/3rdparty/modules/nova/manifests/db/mysql.pp
new file mode 100644 (file)
index 0000000..f1aa16c
--- /dev/null
@@ -0,0 +1,72 @@
+# == Class: nova::db::mysql
+#
+# Class that configures mysql for nova
+#
+# === Parameters:
+#
+# [*password*]
+#   Password to use for the nova user
+#
+# [*dbname*]
+#   (optional) The name of the database
+#   Defaults to 'nova'
+#
+# [*user*]
+#   (optional) The mysql user to create
+#   Defaults to 'nova'
+#
+# [*host*]
+#   (optional) The IP address of the mysql server
+#   Defaults to '127.0.0.1'
+#
+# [*charset*]
+#   (optional) The charset to use for the nova database
+#   Defaults to 'utf8'
+#
+# [*collate*]
+#   (optional) The collate to use for the nova database
+#   Defaults to 'utf8_general_ci'
+#
+# [*allowed_hosts*]
+#   (optional) Additional hosts that are allowed to access this DB
+#   Defaults to undef
+#
+# [*cluster_id*]
+#   (optional) Deprecated. Does nothing
+#   Defaults to 'localzone'
+#
+# [*mysql_module*]
+#   (optional) Deprecated. Does nothing.
+#
+class nova::db::mysql(
+  $password,
+  $dbname        = 'nova',
+  $user          = 'nova',
+  $host          = '127.0.0.1',
+  $charset       = 'utf8',
+  $collate       = 'utf8_general_ci',
+  $allowed_hosts = undef,
+  $mysql_module  = undef,
+  $cluster_id    = undef
+) {
+
+  if $cluster_id {
+    warning('The cluster_id parameter is deprecated and has no effect.')
+  }
+
+  if $mysql_module {
+    warning('The mysql_module parameter is deprecated. The latest 2.x mysql module will be used.')
+  }
+
+  ::openstacklib::db::mysql { 'nova':
+    user          => $user,
+    password_hash => mysql_password($password),
+    dbname        => $dbname,
+    host          => $host,
+    charset       => $charset,
+    collate       => $collate,
+    allowed_hosts => $allowed_hosts,
+  }
+
+  ::Openstacklib::Db::Mysql['nova'] ~> Exec<| title == 'nova-db-sync' |>
+}