1 # Post deployment steps for all roles
2 # A single config is re-applied with an incrementing step number
3 {% for role in roles %}
4 # {{role.name}} Role post-deploy steps
5 {{role.name}}ArtifactsConfig:
6 type: deploy-artifacts.yaml
8 {{role.name}}ArtifactsDeploy:
9 type: OS::Heat::StructuredDeployments
11 servers: {get_param: [servers, {{role.name}}]}
12 config: {get_resource: {{role.name}}ArtifactsConfig}
14 {{role.name}}PreConfig:
15 type: OS::TripleO::Tasks::{{role.name}}PreConfig
17 servers: {get_param: [servers, {{role.name}}]}
19 update_identifier: {get_param: DeployIdentifier}
22 type: OS::TripleO::{{role.name}}Config
24 StepConfig: {list_join: ["\n", {get_param: [role_data, {{role.name}}, step_config]}]}
26 {{role.name}}PrePuppet:
27 type: OS::TripleO::Tasks::{{role.name}}PrePuppet
29 servers: {get_param: [servers, {{role.name}}]}
31 update_identifier: {get_param: DeployIdentifier}
33 {% if role.name in ['Controller', 'ObjectStorage'] %}
34 {{role.name}}SwiftRingDeploy:
35 type: OS::TripleO::Tasks::SwiftRingDeploy
37 servers: {get_param: [servers, {{role.name}}]}
40 # Step through a series of configuration steps
41 {% for step in range(1, 6) %}
42 {{role.name}}Deployment_Step{{step}}:
43 type: OS::Heat::StructuredDeploymentGroup
45 depends_on: [{{role.name}}PrePuppet, {{role.name}}PreConfig, {{role.name}}ArtifactsDeploy]
48 {% for dep in roles %}
49 - {{dep.name}}Deployment_Step{{step -1}}
53 name: {{role.name}}Deployment_Step{{step}}
54 servers: {get_param: [servers, {{role.name}}]}
55 config: {get_resource: {{role.name}}Config}
58 update_identifier: {get_param: DeployIdentifier}
61 {{role.name}}PostConfig:
62 type: OS::TripleO::Tasks::{{role.name}}PostConfig
64 {% for dep in roles %}
65 - {{dep.name}}Deployment_Step5
68 servers: {get_param: servers}
70 update_identifier: {get_param: DeployIdentifier}
72 # Note, this should come last, so use depends_on to ensure
73 # this is created after any other resources.
74 {{role.name}}ExtraConfigPost:
76 {% for dep in roles %}
77 - {{dep.name}}PostConfig
79 type: OS::TripleO::NodeExtraConfigPost
81 servers: {get_param: [servers, {{role.name}}]}
83 {{role.name}}PostPuppet:
85 - {{role.name}}ExtraConfigPost
86 type: OS::TripleO::Tasks::{{role.name}}PostPuppet
88 servers: {get_param: [servers, {{role.name}}]}
90 update_identifier: {get_param: DeployIdentifier}
92 {% if role.name in ['Controller', 'ObjectStorage'] %}
93 {{role.name}}SwiftRingUpdate:
94 type: OS::TripleO::Tasks::SwiftRingUpdate
96 {% for dep in roles %}
97 - {{dep.name}}Deployment_Step5
100 servers: {get_param: [servers, {{role.name}}]}