Move inclusion of ::manila::db::mysql in manila/api profile
authorGiulio Fidente <gfidente@redhat.com>
Thu, 22 Sep 2016 16:15:45 +0000 (18:15 +0200)
committerGiulio Fidente <gfidente@redhat.com>
Fri, 23 Sep 2016 14:14:16 +0000 (16:14 +0200)
In puppet-manila it is the api service performing db sync, not
scheduler. This change moves ::manila::db::mysql (which creates
the empty database and users) in the tripleo manila/api profile.

Also moves rabbit config into a general manila base profile as
that would be needed by the scheduler service as well.

Change-Id: I2b537f735b8d1be8f39e8c274be3872b193c1014

manifests/profile/base/manila.pp [new file with mode: 0644]
manifests/profile/base/manila/api.pp
manifests/profile/base/manila/scheduler.pp
manifests/profile/base/manila/share.pp
manifests/profile/pacemaker/manila.pp

diff --git a/manifests/profile/base/manila.pp b/manifests/profile/base/manila.pp
new file mode 100644 (file)
index 0000000..5210284
--- /dev/null
@@ -0,0 +1,50 @@
+# Copyright 2016 Red Hat, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+# == Class: tripleo::profile::base::manila
+#
+# Manila common profile for tripleo
+#
+# === Parameters
+#
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
+#
+# [*step*]
+#   (Optional) The current step of the deployment
+#   Defaults to hiera('step')
+#
+# [*rabbit_hosts*]
+#   list of the rabbbit host IPs
+#   Defaults to hiera('rabbitmq_node_ips')
+
+class tripleo::profile::base::manila (
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
+  $rabbit_hosts   = hiera('rabbitmq_node_ips', undef),
+) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
+
+  if $step >= 4 or ($step >= 3 and $sync_db) {
+    class { '::manila' :
+      rabbit_hosts => $rabbit_hosts,
+    }
+    include ::manila::config
+  }
+}
index 89ff810..ca5455f 100644 (file)
 #
 # === Parameters
 #
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
+#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
-# [*rabbit_hosts*]
-#   list of the rabbbit host IPs
-#   Defaults to hiera('rabbitmq_node_ips')
 
 class tripleo::profile::base::manila::api (
-  $step         = hiera('step'),
-  $rabbit_hosts = hiera('rabbitmq_node_ips', undef),
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
 ) {
-  if $step >= 4 {
-    class { '::manila' :
-      rabbit_hosts => $rabbit_hosts,
-    }
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
+
+  include ::tripleo::profile::base::manila
+
+  if $step >= 3 and $sync_db {
+    include ::manila::db::mysql
+  }
+
+  if $step >= 4 or ($step >= 3 and $sync_db) {
     include ::manila::api
   }
 }
-
index 8581187..07ea676 100644 (file)
 #
 # === Parameters
 #
-# [*bootstrap_node*]
-#   (Optional) The hostname of the node responsible for bootstrapping tasks
-#   Defaults to hiera('bootstrap_nodeid')
-#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
 #
 class tripleo::profile::base::manila::scheduler (
-  $bootstrap_node = hiera('bootstrap_nodeid', undef),
-  $step           = hiera('step'),
+  $step = hiera('step'),
 ) {
-  if $::hostname == downcase($bootstrap_node) {
-    $sync_db = true
-  } else {
-    $sync_db = false
-  }
-
-  if $step >= 3 and $sync_db {
-    include ::manila::db::mysql
-  }
+  include ::tripleo::profile::base::manila
 
   if $step >= 4 {
     include ::manila::compute::nova
     include ::manila::network::neutron
     include ::manila::scheduler
   }
-
 }
-
index ed64b29..d39c55c 100644 (file)
@@ -26,8 +26,9 @@
 class tripleo::profile::base::manila::share (
   $step = hiera('step'),
 ) {
+  include ::tripleo::profile::base::manila
+
   if $step >= 4 {
     include ::manila::share
   }
 }
-
index 45373f6..a1ff5ca 100644 (file)
@@ -46,11 +46,11 @@ class tripleo::profile::pacemaker::manila (
     stop       => '/bin/true',
   }
 
-  if $step >= 4 {
-    include ::tripleo::profile::base::manila::api
-    include ::tripleo::profile::base::manila::scheduler
-    include ::tripleo::profile::base::manila::share
+  include ::tripleo::profile::base::manila::api
+  include ::tripleo::profile::base::manila::scheduler
+  include ::tripleo::profile::base::manila::share
 
+  if $step >= 4 {
     # manila generic:
     $manila_generic_enable = hiera('manila_generic_enable_backend', false)
     if $manila_generic_enable {