1 heat_template_version: ocata
4 Post-deploy configuration steps via puppet for all roles,
5 as defined in ../roles_data.yaml
10 description: Mapping of Role name e.g Controller to a list of servers
14 description: Mapping of Role name e.g Controller to the per-role data
20 Setting this to a unique value will re-run any deployment tasks which
21 perform configuration on a Heat stack-update.
25 {% for role in roles %}
26 # Post deployment steps for all roles
27 # A single config is re-applied with an incrementing step number
28 # {{role.name}} Role steps
29 {{role.name}}ArtifactsConfig:
30 type: deploy-artifacts.yaml
32 {{role.name}}ArtifactsDeploy:
33 type: OS::Heat::StructuredDeployments
35 servers: {get_param: [servers, {{role.name}}]}
36 config: {get_resource: {{role.name}}ArtifactsConfig}
38 {{role.name}}PreConfig:
39 type: OS::TripleO::Tasks::{{role.name}}PreConfig
41 servers: {get_param: [servers, {{role.name}}]}
43 update_identifier: {get_param: DeployIdentifier}
46 type: OS::TripleO::{{role.name}}Config
48 StepConfig: {get_param: [role_data, {{role.name}}, step_config]}
50 {% if role.name == 'Controller' %}
52 type: OS::TripleO::Tasks::ControllerPrePuppet
54 servers: {get_param: [servers, Controller]}
56 update_identifier: {get_param: DeployIdentifier}
59 # Step through a series of configuration steps
60 {% for step in range(1, 6) %}
61 {% for role in roles %}
63 {{role.name}}Deployment_Step{{step}}:
64 type: OS::Heat::StructuredDeploymentGroup
66 depends_on: [{{role.name}}PreConfig, {{role.name}}ArtifactsDeploy]
69 {% for dep in roles %}
70 - {{dep.name}}Deployment_Step{{step -1}}
74 name: {{role.name}}Deployment_Step{{step}}
75 servers: {get_param: [servers, {{role.name}}]}
76 config: {get_resource: {{role.name}}Config}
79 update_identifier: {get_param: DeployIdentifier}
84 {{role.name}}PostConfig:
85 type: OS::TripleO::Tasks::{{role.name}}PostConfig
87 {% for dep in roles %}
88 - {{dep.name}}Deployment_Step5
91 servers: {get_param: servers}
93 update_identifier: {get_param: DeployIdentifier}
95 # Note, this should come last, so use depends_on to ensure
96 # this is created after any other resources.
97 {{role.name}}ExtraConfigPost:
99 {% for dep in roles %}
100 - {{dep.name}}PostConfig
102 type: OS::TripleO::NodeExtraConfigPost
104 servers: {get_param: [servers, {{role.name}}]}
106 {% if role.name == 'Controller' %}
107 ControllerPostPuppet:
109 - ControllerExtraConfigPost
110 type: OS::TripleO::Tasks::ControllerPostPuppet
112 servers: {get_param: [servers, Controller]}
114 update_identifier: {get_param: DeployIdentifier}