Increment step count to include ringbuilder
authorDan Prince <dprince@redhat.com>
Tue, 22 Mar 2016 20:22:45 +0000 (16:22 -0400)
committerDan Prince <dprince@redhat.com>
Fri, 25 Mar 2016 12:28:00 +0000 (08:28 -0400)
This patch wires in ringbuilder.pp so that it is always
asserted like the other manifests and it fixes the misaligned
step sequencing in calling our overcloud controller manifests.

Previously it was called as a separate software deployment outside of
the hiera step sequence. This made things confusing in
controller-post.yaml since the deployment names didn't align
with the step hiera variables after step 3. Now that we call it
just like the other modules it should make gradually moving this
code to puppet-tripleo more straightforward as well.

Change-Id: Ibd4f51f65da475bb20a6b08d7bda673f330a5464

puppet/controller-config-pacemaker.yaml
puppet/controller-config.yaml
puppet/controller-post.yaml
puppet/manifests/overcloud_controller.pp
puppet/manifests/overcloud_controller_pacemaker.pp
puppet/manifests/ringbuilder.pp

index dc81498..21db825 100644 (file)
@@ -22,7 +22,10 @@ resources:
       outputs:
       - name: result
       config:
-        get_file: manifests/overcloud_controller_pacemaker.pp
+        list_join:
+        - ''
+        - - get_file: manifests/overcloud_controller_pacemaker.pp
+          - get_file: manifests/ringbuilder.pp
 
 outputs:
   OS::stack_id:
index f85e1a9..f7a6a56 100644 (file)
@@ -22,7 +22,10 @@ resources:
       outputs:
       - name: result
       config:
-        get_file: manifests/overcloud_controller.pp
+        list_join:
+        - ''
+        - - get_file: manifests/overcloud_controller.pp
+          - get_file: manifests/ringbuilder.pp
 
 outputs:
   OS::stack_id:
index 713ad70..04f20b6 100644 (file)
@@ -64,39 +64,26 @@ resources:
         update_identifier: {get_param: NodeConfigIdentifiers}
       actions: ['CREATE'] # no need for two passes on an UPDATE
 
-  ControllerRingbuilderPuppetConfig:
-    type: OS::Heat::SoftwareConfig
-    properties:
-      group: puppet
-      options:
-        enable_debug: {get_param: ConfigDebug}
-        enable_hiera: True
-        enable_facter: False
-      inputs:
-      outputs:
-      - name: result
-      config:
-        get_file: manifests/ringbuilder.pp
-
-  ControllerRingbuilderDeployment_Step3:
+  ControllerOvercloudServicesDeployment_Step3:
     type: OS::Heat::StructuredDeployments
     depends_on: ControllerServicesBaseDeployment_Step2
     properties:
-      name: ControllerRingbuilderDeployment_Step3
+      name: ControllerOvercloudServicesDeployment_Step3
       servers:  {get_param: servers}
-      config: {get_resource: ControllerRingbuilderPuppetConfig}
+      config: {get_resource: ControllerPuppetConfig}
       input_values:
+        step: 3
         update_identifier: {get_param: NodeConfigIdentifiers}
 
   ControllerOvercloudServicesDeployment_Step4:
     type: OS::Heat::StructuredDeployments
-    depends_on: ControllerRingbuilderDeployment_Step3
+    depends_on: ControllerOvercloudServicesDeployment_Step3
     properties:
       name: ControllerOvercloudServicesDeployment_Step4
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
-        step: 3
+        step: 4
         update_identifier: {get_param: NodeConfigIdentifiers}
 
   ControllerOvercloudServicesDeployment_Step5:
@@ -107,7 +94,7 @@ resources:
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
-        step: 4
+        step: 5
         update_identifier: {get_param: NodeConfigIdentifiers}
 
   ControllerOvercloudServicesDeployment_Step6:
@@ -118,12 +105,23 @@ resources:
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
-        step: 5
+        step: 6
+        update_identifier: {get_param: NodeConfigIdentifiers}
+
+  ControllerOvercloudServicesDeployment_Step7:
+    type: OS::Heat::StructuredDeployments
+    depends_on: ControllerOvercloudServicesDeployment_Step6
+    properties:
+      name: ControllerOvercloudServicesDeployment_Step7
+      servers:  {get_param: servers}
+      config: {get_resource: ControllerPuppetConfig}
+      input_values:
+        step: 7
         update_identifier: {get_param: NodeConfigIdentifiers}
 
   ControllerPostPuppet:
     type: OS::TripleO::Tasks::ControllerPostPuppet
-    depends_on: ControllerOvercloudServicesDeployment_Step6
+    depends_on: ControllerOvercloudServicesDeployment_Step7
     properties:
       servers:  {get_param: servers}
       input_values:
index 5b3e8f7..ff2264c 100644 (file)
@@ -210,7 +210,7 @@ if hiera('step') >= 2 {
 
 } #END STEP 2
 
-if hiera('step') >= 3 {
+if hiera('step') >= 4 {
 
   include ::keystone
   include ::keystone::config
@@ -673,9 +673,9 @@ if hiera('step') >= 3 {
 
   hiera_include('controller_classes')
 
-} #END STEP 3
+} #END STEP 4
 
-if hiera('step') >= 4 {
+if hiera('step') >= 5 {
   $keystone_enable_db_purge = hiera('keystone_enable_db_purge', true)
   $nova_enable_db_purge = hiera('nova_enable_db_purge', true)
   $cinder_enable_db_purge = hiera('cinder_enable_db_purge', true)
@@ -710,7 +710,7 @@ if hiera('step') >= 4 {
     }
   }
 
-} #END STEP 4
+} #END STEP 5
 
 $package_manifest_name = join(['/var/lib/tripleo/installed-packages/overcloud_controller', hiera('step')])
 package_manifest{$package_manifest_name: ensure => present}
index 7c5fd6b..7b681f8 100644 (file)
@@ -29,13 +29,13 @@ if $::hostname == downcase(hiera('bootstrap_nodeid')) {
   $sync_db = false
 }
 
-$enable_fencing = str2bool(hiera('enable_fencing', false)) and hiera('step') >= 5
+$enable_fencing = str2bool(hiera('enable_fencing', false)) and hiera('step') >= 6
 $enable_load_balancer = hiera('enable_load_balancer', true)
 
 # When to start and enable services which haven't been Pacemakerized
 # FIXME: remove when we start all OpenStack services using Pacemaker
 # (occurrences of this variable will be gradually replaced with false)
-$non_pcmk_start = hiera('step') >= 4
+$non_pcmk_start = hiera('step') >= 5
 
 if hiera('step') >= 1 {
 
@@ -584,7 +584,7 @@ MYSQL_HOST=localhost\n",
 
 } #END STEP 2
 
-if hiera('step') >= 3 {
+if hiera('step') >= 4 {
 
   class { '::keystone':
     sync_db          => $sync_db,
@@ -1169,9 +1169,9 @@ if hiera('step') >= 3 {
 
   hiera_include('controller_classes')
 
-} #END STEP 3
+} #END STEP 4
 
-if hiera('step') >= 4 {
+if hiera('step') >= 5 {
   $keystone_enable_db_purge = hiera('keystone_enable_db_purge', true)
   $nova_enable_db_purge = hiera('nova_enable_db_purge', true)
   $cinder_enable_db_purge = hiera('cinder_enable_db_purge', true)
@@ -1346,7 +1346,7 @@ if hiera('step') >= 4 {
                   Pacemaker::Resource::Service[$::glance::params::api_service_name]],
     }
 
-    if hiera('step') == 4 {
+    if hiera('step') == 5 {
       # Neutron
       # NOTE(gfidente): Neutron will try to populate the database with some data
       # as soon as neutron-server is started; to avoid races we want to make this
@@ -1932,9 +1932,9 @@ if hiera('step') >= 4 {
 
   }
 
-} #END STEP 4
+} #END STEP 5
 
-if hiera('step') >= 5 {
+if hiera('step') >= 6 {
 
   if $pacemaker_master {
 
@@ -1956,7 +1956,7 @@ if hiera('step') >= 5 {
     }
   }
 
-} #END STEP 5
+} #END STEP 6
 
 $package_manifest_name = join(['/var/lib/tripleo/installed-packages/overcloud_controller_pacemaker', hiera('step')])
 package_manifest{$package_manifest_name: ensure => present}
index 2d880d3..a623da2 100644 (file)
@@ -13,8 +13,6 @@
 # License for the specific language governing permissions and limitations
 # under the License.
 
-include ::tripleo::packages
-
 define add_devices(
   $swift_zones = '1'
 ){
@@ -91,6 +89,6 @@ class tripleo::ringbuilder (
   }
 }
 
-include ::tripleo::ringbuilder
-
-package_manifest{'/var/lib/tripleo/installed-packages/ringbuilder': ensure => present}
+if hiera('step') >= 3 {
+  include ::tripleo::ringbuilder
+}