aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Prince <dprince@redhat.com>2016-03-22 16:22:45 -0400
committerDan Prince <dprince@redhat.com>2016-03-25 08:28:00 -0400
commit9988bd25aa4bac1375ef4783d636c7adecedee92 (patch)
tree43869cc445e5e2e72f3d96655f99e7aa358495eb
parentc6249a1af273886fa326563dbc696af8fb561caa (diff)
Increment step count to include ringbuilder
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
-rw-r--r--puppet/controller-config-pacemaker.yaml5
-rw-r--r--puppet/controller-config.yaml5
-rw-r--r--puppet/controller-post.yaml42
-rw-r--r--puppet/manifests/overcloud_controller.pp8
-rw-r--r--puppet/manifests/overcloud_controller_pacemaker.pp18
-rw-r--r--puppet/manifests/ringbuilder.pp8
6 files changed, 44 insertions, 42 deletions
diff --git a/puppet/controller-config-pacemaker.yaml b/puppet/controller-config-pacemaker.yaml
index dc81498a..21db825a 100644
--- a/puppet/controller-config-pacemaker.yaml
+++ b/puppet/controller-config-pacemaker.yaml
@@ -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:
diff --git a/puppet/controller-config.yaml b/puppet/controller-config.yaml
index f85e1a9e..f7a6a56d 100644
--- a/puppet/controller-config.yaml
+++ b/puppet/controller-config.yaml
@@ -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:
diff --git a/puppet/controller-post.yaml b/puppet/controller-post.yaml
index 713ad706..04f20b61 100644
--- a/puppet/controller-post.yaml
+++ b/puppet/controller-post.yaml
@@ -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:
diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp
index 5b3e8f77..ff2264cf 100644
--- a/puppet/manifests/overcloud_controller.pp
+++ b/puppet/manifests/overcloud_controller.pp
@@ -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}
diff --git a/puppet/manifests/overcloud_controller_pacemaker.pp b/puppet/manifests/overcloud_controller_pacemaker.pp
index 7c5fd6bd..7b681f8e 100644
--- a/puppet/manifests/overcloud_controller_pacemaker.pp
+++ b/puppet/manifests/overcloud_controller_pacemaker.pp
@@ -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}
diff --git a/puppet/manifests/ringbuilder.pp b/puppet/manifests/ringbuilder.pp
index 2d880d33..a623da29 100644
--- a/puppet/manifests/ringbuilder.pp
+++ b/puppet/manifests/ringbuilder.pp
@@ -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
+}