Merge "Modify pci_passthrough hiera value as string" into stable/ocata
[apex-tripleo-heat-templates.git] / puppet / puppet-steps.j2
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
7
8   {{role.name}}ArtifactsDeploy:
9     type: OS::Heat::StructuredDeployments
10     properties:
11       servers:  {get_param: [servers, {{role.name}}]}
12       config: {get_resource: {{role.name}}ArtifactsConfig}
13
14   {{role.name}}PreConfig:
15     type: OS::TripleO::Tasks::{{role.name}}PreConfig
16     properties:
17       servers: {get_param: [servers, {{role.name}}]}
18       input_values:
19         update_identifier: {get_param: DeployIdentifier}
20
21   {{role.name}}Config:
22     type: OS::TripleO::{{role.name}}Config
23     properties:
24       StepConfig: {get_param: [role_data, {{role.name}}, step_config]}
25
26   {{role.name}}PrePuppet:
27     type: OS::TripleO::Tasks::{{role.name}}PrePuppet
28     properties:
29       servers: {get_param: [servers, {{role.name}}]}
30       input_values:
31         update_identifier: {get_param: DeployIdentifier}
32
33   {% if role.name in ['Controller', 'ObjectStorage'] %}
34   {{role.name}}SwiftRingDeploy:
35     type: OS::TripleO::Tasks::SwiftRingDeploy
36     properties:
37       servers: {get_param: [servers, {{role.name}}]}
38   {% endif %}
39
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
44   {% if step == 1 and role.name == 'Controller' %}
45     depends_on: [ControllerPrePuppet, {{role.name}}PreConfig, {{role.name}}ArtifactsDeploy]
46   {% elif step == 1 and role.name != 'Controller' %}
47     depends_on: [{{role.name}}PreConfig, {{role.name}}ArtifactsDeploy]
48   {% else %}
49     depends_on:
50     {% for dep in roles %}
51       - {{dep.name}}Deployment_Step{{step -1}}
52     {% endfor %}
53   {% endif %}
54     properties:
55       name: {{role.name}}Deployment_Step{{step}}
56       servers: {get_param: [servers, {{role.name}}]}
57       config: {get_resource: {{role.name}}Config}
58       input_values:
59         step: {{step}}
60         update_identifier: {get_param: DeployIdentifier}
61 {% endfor %}
62
63   {{role.name}}PostConfig:
64     type: OS::TripleO::Tasks::{{role.name}}PostConfig
65     depends_on:
66   {% for dep in roles %}
67       - {{dep.name}}Deployment_Step5
68   {% endfor %}
69     properties:
70       servers:  {get_param: servers}
71       input_values:
72         update_identifier: {get_param: DeployIdentifier}
73
74   # Note, this should come last, so use depends_on to ensure
75   # this is created after any other resources.
76   {{role.name}}ExtraConfigPost:
77     depends_on:
78   {% for dep in roles %}
79       - {{dep.name}}PostConfig
80   {% endfor %}
81     type: OS::TripleO::NodeExtraConfigPost
82     properties:
83         servers: {get_param: [servers, {{role.name}}]}
84
85   {{role.name}}PostPuppet:
86     depends_on:
87       - {{role.name}}ExtraConfigPost
88     type: OS::TripleO::Tasks::{{role.name}}PostPuppet
89     properties:
90       servers: {get_param: [servers, {{role.name}}]}
91       input_values:
92         update_identifier: {get_param: DeployIdentifier}
93
94   {% if role.name in ['Controller', 'ObjectStorage'] %}
95   {{role.name}}SwiftRingUpdate:
96     type: OS::TripleO::Tasks::SwiftRingUpdate
97     depends_on:
98   {% for dep in roles %}
99       - {{dep.name}}Deployment_Step5
100   {% endfor %}
101     properties:
102       servers: {get_param: [servers, {{role.name}}]}
103   {% endif %}
104 {% endfor %}