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.
24 # Post deployment steps for all roles
25 # A single config is re-applied with an incrementing step number
26 {% for role in roles %}
27 # {{role.name}} Role post deploy steps
28 {{role.name}}ArtifactsConfig:
29 type: deploy-artifacts.yaml
31 {{role.name}}ArtifactsDeploy:
32 type: OS::Heat::StructuredDeployments
34 servers: {get_param: [servers, {{role.name}}]}
35 config: {get_resource: {{role.name}}ArtifactsConfig}
37 {{role.name}}PreConfig:
38 type: OS::TripleO::Tasks::{{role.name}}PreConfig
40 servers: {get_param: [servers, {{role.name}}]}
42 update_identifier: {get_param: DeployIdentifier}
45 type: OS::TripleO::{{role.name}}Config
47 StepConfig: {get_param: [role_data, {{role.name}}, step_config]}
49 {% if role.name == 'Controller' %}
51 type: OS::TripleO::Tasks::ControllerPrePuppet
53 servers: {get_param: [servers, Controller]}
55 update_identifier: {get_param: DeployIdentifier}
58 # Step through a series of configuration steps
59 {% for step in range(1, 6) %}
60 {{role.name}}Deployment_Step{{step}}:
61 type: OS::Heat::StructuredDeploymentGroup
63 depends_on: [{{role.name}}PreConfig, {{role.name}}ArtifactsDeploy]
66 {% for dep in roles %}
67 - {{dep.name}}Deployment_Step{{step -1}}
71 name: {{role.name}}Deployment_Step{{step}}
72 servers: {get_param: [servers, {{role.name}}]}
73 config: {get_resource: {{role.name}}Config}
76 update_identifier: {get_param: DeployIdentifier}
79 {{role.name}}PostConfig:
80 type: OS::TripleO::Tasks::{{role.name}}PostConfig
82 {% for dep in roles %}
83 - {{dep.name}}Deployment_Step5
86 servers: {get_param: servers}
88 update_identifier: {get_param: DeployIdentifier}
90 # Note, this should come last, so use depends_on to ensure
91 # this is created after any other resources.
92 {{role.name}}ExtraConfigPost:
94 {% for dep in roles %}
95 - {{dep.name}}PostConfig
97 type: OS::TripleO::NodeExtraConfigPost
99 servers: {get_param: [servers, {{role.name}}]}
101 {% if role.name == 'Controller' %}
102 ControllerPostPuppet:
104 - ControllerExtraConfigPost
105 type: OS::TripleO::Tasks::ControllerPostPuppet
107 servers: {get_param: [servers, Controller]}
109 update_identifier: {get_param: DeployIdentifier}