Generate Pre/Post Puppet Tasks for all roles

We need to generate the Pre and Post Puppet Tasks for all roles, not
just the Controller role. Otherwise, you have to have a role
specifically named Controller that is running your pacemaker services,
or pacemaker won't be properly handled on stack-updates.

When using deployed-server's it's actually not possible to have a role
called Controller, since we need to use all custom roles so that we can
set disable_contraints on each role. Further, it is not possible to
redefine the Controller role since puppet/controller-role.yaml is listed
in the excludes file.

Change-Id: I737b24db90932e292b50b122640f66385f2d1c23
Partial-Bug: #1665060
This commit is contained in:
James Slagle 2017-02-15 13:13:36 -05:00
parent 2d36054315
commit 529768ae84
2 changed files with 11 additions and 13 deletions

View File

@ -69,8 +69,10 @@ resource_registry:
OS::TripleO::NodeExtraConfig: puppet/extraconfig/pre_deploy/default.yaml
OS::TripleO::NodeExtraConfigPost: extraconfig/post_deploy/default.yaml
OS::TripleO::Tasks::ControllerPrePuppet: OS::Heat::None
OS::TripleO::Tasks::ControllerPostPuppet: OS::Heat::None
{% for role in roles %}
OS::TripleO::Tasks::{{role.name}}PrePuppet: OS::Heat::None
OS::TripleO::Tasks::{{role.name}}PostPuppet: OS::Heat::None
{% endfor %}
# "AllNodes" Extra cluster config, runs on all nodes prior to the post_deploy
# phase, e.g when puppet is applied, but after the pre_deploy phase. Useful when

View File

@ -23,14 +23,12 @@
properties:
StepConfig: {list_join: ["\n", {get_param: [role_data, {{role.name}}, step_config]}]}
{% if role.name == 'Controller' %}
ControllerPrePuppet:
type: OS::TripleO::Tasks::ControllerPrePuppet
{{role.name}}PrePuppet:
type: OS::TripleO::Tasks::{{role.name}}PrePuppet
properties:
servers: {get_param: [servers, Controller]}
servers: {get_param: [servers, {{role.name}}]}
input_values:
update_identifier: {get_param: DeployIdentifier}
{% endif %}
{% if role.name in ['Controller', 'ObjectStorage'] %}
{{role.name}}SwiftRingDeploy:
@ -82,16 +80,14 @@
properties:
servers: {get_param: [servers, {{role.name}}]}
{% if role.name == 'Controller' %}
ControllerPostPuppet:
{{role.name}}PostPuppet:
depends_on:
- ControllerExtraConfigPost
type: OS::TripleO::Tasks::ControllerPostPuppet
- {{role.name}}ExtraConfigPost
type: OS::TripleO::Tasks::{{role.name}}PostPuppet
properties:
servers: {get_param: [servers, Controller]}
servers: {get_param: [servers, {{role.name}}]}
input_values:
update_identifier: {get_param: DeployIdentifier}
{% endif %}
{% if role.name in ['Controller', 'ObjectStorage'] %}
{{role.name}}SwiftRingUpdate: