diff options
Diffstat (limited to 'extraconfig/tasks/post_puppet_pacemaker.j2.yaml')
-rw-r--r-- | extraconfig/tasks/post_puppet_pacemaker.j2.yaml | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/extraconfig/tasks/post_puppet_pacemaker.j2.yaml b/extraconfig/tasks/post_puppet_pacemaker.j2.yaml new file mode 100644 index 00000000..7fc258d6 --- /dev/null +++ b/extraconfig/tasks/post_puppet_pacemaker.j2.yaml @@ -0,0 +1,42 @@ +heat_template_version: pike +description: 'Post-Puppet Config for Pacemaker deployments' + +parameters: + servers: + type: json + input_values: + type: json + description: input values for the software deployments + +resources: + +{%- for role in roles -%} +{% if "controller" in role.tags %} + {{role.name}}PostPuppetMaintenanceModeConfig: + type: OS::Heat::SoftwareConfig + properties: + group: script + config: | + #!/bin/bash + pacemaker_status=$(systemctl is-active pacemaker) + + if [ "$pacemaker_status" = "active" ]; then + pcs property set maintenance-mode=false + fi + + {{role.name}}PostPuppetMaintenanceModeDeployment: + type: OS::Heat::SoftwareDeployments + properties: + servers: {get_param: [servers, {{role.name}}]} + config: {get_resource: {{role.name}}PostPuppetMaintenanceModeConfig} + input_values: {get_param: input_values} + + {{role.name}}PostPuppetRestart: + type: OS::TripleO::Tasks::{{role.name}}PostPuppetRestart + depends_on: {{role.name}}PostPuppetMaintenanceModeDeployment + properties: + servers: {get_param: [servers, {{role.name}}]} + input_values: {get_param: input_values} +{%- endif -%} +{% endfor %} + |