1 heat_template_version: 2016-10-14
4 Post-deploy configuration steps via puppet for all roles,
5 Controller, Compute, BlockStorage, SwiftStorage and CephStorage.
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 # Controller Role steps
27 ControllerArtifactsConfig:
28 type: deploy-artifacts.yaml
30 ControllerArtifactsDeploy:
31 type: OS::Heat::StructuredDeployments
33 servers: {get_param: [servers, Controller]}
34 config: {get_resource: ControllerArtifactsConfig}
37 type: OS::TripleO::Tasks::ControllerPreConfig
39 servers: {get_param: [servers, Controller]}
41 update_identifier: {get_param: DeployIdentifier}
44 type: OS::TripleO::ControllerConfig
46 StepConfig: {get_param: [role_data, Controller, step_config]}
48 # Step through a series of configuration steps
49 ControllerDeployment_Step1:
50 type: OS::Heat::StructuredDeploymentGroup
51 depends_on: [ControllerPreConfig, ControllerArtifactsDeploy]
53 name: ControllerDeployment_Step1
54 servers: {get_param: [servers, Controller]}
55 config: {get_resource: ControllerConfig}
58 update_identifier: {get_param: DeployIdentifier}
60 ControllerDeployment_Step2:
61 type: OS::Heat::StructuredDeploymentGroup
63 - ControllerDeployment_Step1
64 - ComputeDeployment_Step1
65 - BlockStorageDeployment_Step1
66 - ObjectStorageDeployment_Step1
67 - CephStorageDeployment_Step1
69 name: ControllerDeployment_Step2
70 servers: {get_param: [servers, Controller]}
71 config: {get_resource: ControllerConfig}
74 update_identifier: {get_param: DeployIdentifier}
76 ControllerDeployment_Step3:
77 type: OS::Heat::StructuredDeploymentGroup
79 - ControllerDeployment_Step2
80 - ComputeDeployment_Step2
81 - BlockStorageDeployment_Step2
82 - ObjectStorageDeployment_Step2
83 - CephStorageDeployment_Step2
85 name: ControllerDeployment_Step3
86 servers: {get_param: [servers, Controller]}
87 config: {get_resource: ControllerConfig}
90 update_identifier: {get_param: DeployIdentifier}
92 ControllerDeployment_Step4:
93 type: OS::Heat::StructuredDeploymentGroup
95 - ControllerDeployment_Step3
96 - ComputeDeployment_Step3
97 - BlockStorageDeployment_Step3
98 - ObjectStorageDeployment_Step3
99 - CephStorageDeployment_Step3
101 name: ControllerDeployment_Step4
102 servers: {get_param: [servers, Controller]}
103 config: {get_resource: ControllerConfig}
106 update_identifier: {get_param: DeployIdentifier}
108 ControllerDeployment_Step5:
109 type: OS::Heat::StructuredDeploymentGroup
111 - ControllerDeployment_Step4
112 - ComputeDeployment_Step4
113 - BlockStorageDeployment_Step4
114 - ObjectStorageDeployment_Step4
115 - CephStorageDeployment_Step4
117 name: ControllerDeployment_Step5
118 servers: {get_param: [servers, Controller]}
119 config: {get_resource: ControllerConfig}
122 update_identifier: {get_param: DeployIdentifier}
124 ControllerPostConfig:
125 type: OS::TripleO::Tasks::ControllerPostConfig
127 - ControllerDeployment_Step5
128 - ComputeDeployment_Step5
129 - BlockStorageDeployment_Step5
130 - ObjectStorageDeployment_Step5
131 - CephStorageDeployment_Step5
133 servers: {get_param: servers}
135 update_identifier: {get_param: DeployIdentifier}
137 # Note, this should come last, so use depends_on to ensure
138 # this is created after any other resources.
139 ControllerExtraConfigPost:
141 - ControllerPostConfig
143 - BlockStoragePostConfig
144 - ObjectStoragePostConfig
145 - CephStoragePostConfig
146 type: OS::TripleO::NodeExtraConfigPost
148 servers: {get_param: [servers, Controller]}
151 ComputeArtifactsConfig:
152 type: deploy-artifacts.yaml
154 ComputeArtifactsDeploy:
155 type: OS::Heat::StructuredDeployments
157 servers: {get_param: [servers, Compute]}
158 config: {get_resource: ComputeArtifactsConfig}
161 type: OS::TripleO::Tasks::ComputePreConfig
163 servers: {get_param: [servers, Compute]}
165 update_identifier: {get_param: DeployIdentifier}
168 type: OS::TripleO::ComputeConfig
170 StepConfig: {get_param: [role_data, Compute, step_config]}
172 # Step through a series of configuration steps
173 ComputeDeployment_Step1:
174 type: OS::Heat::StructuredDeploymentGroup
175 depends_on: [ComputePreConfig, ComputeArtifactsDeploy]
177 name: ComputeDeployment_Step1
178 servers: {get_param: [servers, Compute]}
179 config: {get_resource: ComputeConfig}
182 update_identifier: {get_param: DeployIdentifier}
184 ComputeDeployment_Step2:
185 type: OS::Heat::StructuredDeploymentGroup
187 - ControllerDeployment_Step1
188 - ComputeDeployment_Step1
189 - BlockStorageDeployment_Step1
190 - ObjectStorageDeployment_Step1
191 - CephStorageDeployment_Step1
193 name: ComputeDeployment_Step2
194 servers: {get_param: [servers, Compute]}
195 config: {get_resource: ComputeConfig}
198 update_identifier: {get_param: DeployIdentifier}
200 ComputeDeployment_Step3:
201 type: OS::Heat::StructuredDeploymentGroup
203 - ControllerDeployment_Step2
204 - ComputeDeployment_Step2
205 - BlockStorageDeployment_Step2
206 - ObjectStorageDeployment_Step2
207 - CephStorageDeployment_Step2
209 name: ComputeDeployment_Step3
210 servers: {get_param: [servers, Compute]}
211 config: {get_resource: ComputeConfig}
214 update_identifier: {get_param: DeployIdentifier}
216 ComputeDeployment_Step4:
217 type: OS::Heat::StructuredDeploymentGroup
219 - ControllerDeployment_Step3
220 - ComputeDeployment_Step3
221 - BlockStorageDeployment_Step3
222 - ObjectStorageDeployment_Step3
223 - CephStorageDeployment_Step3
225 name: ComputeDeployment_Step4
226 servers: {get_param: [servers, Compute]}
227 config: {get_resource: ComputeConfig}
230 update_identifier: {get_param: DeployIdentifier}
232 ComputeDeployment_Step5:
233 type: OS::Heat::StructuredDeploymentGroup
235 - ControllerDeployment_Step4
236 - ComputeDeployment_Step4
237 - BlockStorageDeployment_Step4
238 - ObjectStorageDeployment_Step4
239 - CephStorageDeployment_Step4
241 name: ComputeDeployment_Step5
242 servers: {get_param: [servers, Compute]}
243 config: {get_resource: ComputeConfig}
246 update_identifier: {get_param: DeployIdentifier}
249 type: OS::TripleO::Tasks::ComputePostConfig
251 - ControllerDeployment_Step5
252 - ComputeDeployment_Step5
253 - BlockStorageDeployment_Step5
254 - ObjectStorageDeployment_Step5
255 - CephStorageDeployment_Step5
257 servers: {get_param: servers}
259 update_identifier: {get_param: DeployIdentifier}
261 # Note, this should come last, so use depends_on to ensure
262 # this is created after any other resources.
263 ComputeExtraConfigPost:
265 - ControllerPostConfig
267 - BlockStoragePostConfig
268 - ObjectStoragePostConfig
269 - CephStoragePostConfig
270 type: OS::TripleO::NodeExtraConfigPost
272 servers: {get_param: [servers, Compute]}
274 # BlockStorage Role steps
275 BlockStorageArtifactsConfig:
276 type: deploy-artifacts.yaml
278 BlockStorageArtifactsDeploy:
279 type: OS::Heat::StructuredDeployments
281 servers: {get_param: [servers, BlockStorage]}
282 config: {get_resource: BlockStorageArtifactsConfig}
284 BlockStoragePreConfig:
285 type: OS::TripleO::Tasks::BlockStoragePreConfig
287 servers: {get_param: [servers, BlockStorage]}
289 update_identifier: {get_param: DeployIdentifier}
292 type: OS::TripleO::BlockStorageConfig
294 StepConfig: {get_param: [role_data, BlockStorage, step_config]}
296 # Step through a series of configuration steps
297 BlockStorageDeployment_Step1:
298 type: OS::Heat::StructuredDeploymentGroup
299 depends_on: [BlockStoragePreConfig, BlockStorageArtifactsDeploy]
301 name: BlockStorageDeployment_Step1
302 servers: {get_param: [servers, BlockStorage]}
303 config: {get_resource: BlockStorageConfig}
306 update_identifier: {get_param: DeployIdentifier}
308 BlockStorageDeployment_Step2:
309 type: OS::Heat::StructuredDeploymentGroup
311 - ControllerDeployment_Step1
312 - ComputeDeployment_Step1
313 - BlockStorageDeployment_Step1
314 - ObjectStorageDeployment_Step1
315 - CephStorageDeployment_Step1
317 name: BlockStorageDeployment_Step2
318 servers: {get_param: [servers, BlockStorage]}
319 config: {get_resource: BlockStorageConfig}
322 update_identifier: {get_param: DeployIdentifier}
324 BlockStorageDeployment_Step3:
325 type: OS::Heat::StructuredDeploymentGroup
327 - ControllerDeployment_Step2
328 - ComputeDeployment_Step2
329 - BlockStorageDeployment_Step2
330 - ObjectStorageDeployment_Step2
331 - CephStorageDeployment_Step2
333 name: BlockStorageDeployment_Step3
334 servers: {get_param: [servers, BlockStorage]}
335 config: {get_resource: BlockStorageConfig}
338 update_identifier: {get_param: DeployIdentifier}
340 BlockStorageDeployment_Step4:
341 type: OS::Heat::StructuredDeploymentGroup
343 - ControllerDeployment_Step3
344 - ComputeDeployment_Step3
345 - BlockStorageDeployment_Step3
346 - ObjectStorageDeployment_Step3
347 - CephStorageDeployment_Step3
349 name: BlockStorageDeployment_Step4
350 servers: {get_param: [servers, BlockStorage]}
351 config: {get_resource: BlockStorageConfig}
354 update_identifier: {get_param: DeployIdentifier}
356 BlockStorageDeployment_Step5:
357 type: OS::Heat::StructuredDeploymentGroup
359 - ControllerDeployment_Step4
360 - ComputeDeployment_Step4
361 - BlockStorageDeployment_Step4
362 - ObjectStorageDeployment_Step4
363 - CephStorageDeployment_Step4
365 name: BlockStorageDeployment_Step5
366 servers: {get_param: [servers, BlockStorage]}
367 config: {get_resource: BlockStorageConfig}
370 update_identifier: {get_param: DeployIdentifier}
372 BlockStoragePostConfig:
373 type: OS::TripleO::Tasks::BlockStoragePostConfig
375 - ControllerDeployment_Step5
376 - ComputeDeployment_Step5
377 - BlockStorageDeployment_Step5
378 - ObjectStorageDeployment_Step5
379 - CephStorageDeployment_Step5
381 servers: {get_param: servers}
383 update_identifier: {get_param: DeployIdentifier}
385 # Note, this should come last, so use depends_on to ensure
386 # this is created after any other resources.
387 BlockStorageExtraConfigPost:
389 - ControllerPostConfig
391 - BlockStoragePostConfig
392 - ObjectStoragePostConfig
393 - CephStoragePostConfig
394 type: OS::TripleO::NodeExtraConfigPost
396 servers: {get_param: [servers, BlockStorage]}
398 # ObjectStorage Role steps
399 ObjectStorageArtifactsConfig:
400 type: deploy-artifacts.yaml
402 ObjectStorageArtifactsDeploy:
403 type: OS::Heat::StructuredDeployments
405 servers: {get_param: [servers, ObjectStorage]}
406 config: {get_resource: ObjectStorageArtifactsConfig}
408 ObjectStoragePreConfig:
409 type: OS::TripleO::Tasks::ObjectStoragePreConfig
411 servers: {get_param: [servers, ObjectStorage]}
413 update_identifier: {get_param: DeployIdentifier}
416 type: OS::TripleO::ObjectStorageConfig
418 StepConfig: {get_param: [role_data, ObjectStorage, step_config]}
420 # Step through a series of configuration steps
421 ObjectStorageDeployment_Step1:
422 type: OS::Heat::StructuredDeploymentGroup
423 depends_on: [ObjectStoragePreConfig, ObjectStorageArtifactsDeploy]
425 name: ObjectStorageDeployment_Step1
426 servers: {get_param: [servers, ObjectStorage]}
427 config: {get_resource: ObjectStorageConfig}
430 update_identifier: {get_param: DeployIdentifier}
432 ObjectStorageDeployment_Step2:
433 type: OS::Heat::StructuredDeploymentGroup
435 - ControllerDeployment_Step1
436 - ComputeDeployment_Step1
437 - BlockStorageDeployment_Step1
438 - ObjectStorageDeployment_Step1
439 - CephStorageDeployment_Step1
441 name: ObjectStorageDeployment_Step2
442 servers: {get_param: [servers, ObjectStorage]}
443 config: {get_resource: ObjectStorageConfig}
446 update_identifier: {get_param: DeployIdentifier}
448 ObjectStorageDeployment_Step3:
449 type: OS::Heat::StructuredDeploymentGroup
451 - ControllerDeployment_Step2
452 - ComputeDeployment_Step2
453 - BlockStorageDeployment_Step2
454 - ObjectStorageDeployment_Step2
455 - CephStorageDeployment_Step2
457 name: ObjectStorageDeployment_Step3
458 servers: {get_param: [servers, ObjectStorage]}
459 config: {get_resource: ObjectStorageConfig}
462 update_identifier: {get_param: DeployIdentifier}
464 ObjectStorageDeployment_Step4:
465 type: OS::Heat::StructuredDeploymentGroup
467 - ControllerDeployment_Step3
468 - ComputeDeployment_Step3
469 - BlockStorageDeployment_Step3
470 - ObjectStorageDeployment_Step3
471 - CephStorageDeployment_Step3
473 name: ObjectStorageDeployment_Step4
474 servers: {get_param: [servers, ObjectStorage]}
475 config: {get_resource: ObjectStorageConfig}
478 update_identifier: {get_param: DeployIdentifier}
480 ObjectStorageDeployment_Step5:
481 type: OS::Heat::StructuredDeploymentGroup
483 - ControllerDeployment_Step4
484 - ComputeDeployment_Step4
485 - BlockStorageDeployment_Step4
486 - ObjectStorageDeployment_Step4
487 - CephStorageDeployment_Step4
489 name: ObjectStorageDeployment_Step5
490 servers: {get_param: [servers, ObjectStorage]}
491 config: {get_resource: ObjectStorageConfig}
494 update_identifier: {get_param: DeployIdentifier}
496 ObjectStoragePostConfig:
497 type: OS::TripleO::Tasks::ObjectStoragePostConfig
499 - ControllerDeployment_Step5
500 - ComputeDeployment_Step5
501 - BlockStorageDeployment_Step5
502 - ObjectStorageDeployment_Step5
503 - CephStorageDeployment_Step5
505 servers: {get_param: servers}
507 update_identifier: {get_param: DeployIdentifier}
509 # Note, this should come last, so use depends_on to ensure
510 # this is created after any other resources.
511 ObjectStorageExtraConfigPost:
513 - ControllerPostConfig
515 - BlockStoragePostConfig
516 - ObjectStoragePostConfig
517 - CephStoragePostConfig
518 type: OS::TripleO::NodeExtraConfigPost
520 servers: {get_param: [servers, ObjectStorage]}
522 # CephStorage Role steps
523 CephStorageArtifactsConfig:
524 type: deploy-artifacts.yaml
526 CephStorageArtifactsDeploy:
527 type: OS::Heat::StructuredDeployments
529 servers: {get_param: [servers, CephStorage]}
530 config: {get_resource: CephStorageArtifactsConfig}
532 CephStoragePreConfig:
533 type: OS::TripleO::Tasks::CephStoragePreConfig
535 servers: {get_param: [servers, CephStorage]}
537 update_identifier: {get_param: DeployIdentifier}
540 type: OS::TripleO::CephStorageConfig
542 StepConfig: {get_param: [role_data, CephStorage, step_config]}
544 # Step through a series of configuration steps
545 CephStorageDeployment_Step1:
546 type: OS::Heat::StructuredDeploymentGroup
547 depends_on: [CephStoragePreConfig, CephStorageArtifactsDeploy]
549 name: CephStorageDeployment_Step1
550 servers: {get_param: [servers, CephStorage]}
551 config: {get_resource: CephStorageConfig}
554 update_identifier: {get_param: DeployIdentifier}
556 CephStorageDeployment_Step2:
557 type: OS::Heat::StructuredDeploymentGroup
559 - ControllerDeployment_Step1
560 - ComputeDeployment_Step1
561 - BlockStorageDeployment_Step1
562 - ObjectStorageDeployment_Step1
563 - CephStorageDeployment_Step1
565 name: CephStorageDeployment_Step2
566 servers: {get_param: [servers, CephStorage]}
567 config: {get_resource: CephStorageConfig}
570 update_identifier: {get_param: DeployIdentifier}
572 CephStorageDeployment_Step3:
573 type: OS::Heat::StructuredDeploymentGroup
575 - ControllerDeployment_Step2
576 - ComputeDeployment_Step2
577 - BlockStorageDeployment_Step2
578 - ObjectStorageDeployment_Step2
579 - CephStorageDeployment_Step2
581 name: CephStorageDeployment_Step3
582 servers: {get_param: [servers, CephStorage]}
583 config: {get_resource: CephStorageConfig}
586 update_identifier: {get_param: DeployIdentifier}
588 CephStorageDeployment_Step4:
589 type: OS::Heat::StructuredDeploymentGroup
591 - ControllerDeployment_Step3
592 - ComputeDeployment_Step3
593 - BlockStorageDeployment_Step3
594 - ObjectStorageDeployment_Step3
595 - CephStorageDeployment_Step3
597 name: CephStorageDeployment_Step4
598 servers: {get_param: [servers, CephStorage]}
599 config: {get_resource: CephStorageConfig}
602 update_identifier: {get_param: DeployIdentifier}
604 CephStorageDeployment_Step5:
605 type: OS::Heat::StructuredDeploymentGroup
607 - ControllerDeployment_Step4
608 - ComputeDeployment_Step4
609 - BlockStorageDeployment_Step4
610 - ObjectStorageDeployment_Step4
611 - CephStorageDeployment_Step4
613 name: CephStorageDeployment_Step5
614 servers: {get_param: [servers, CephStorage]}
615 config: {get_resource: CephStorageConfig}
618 update_identifier: {get_param: DeployIdentifier}
620 CephStoragePostConfig:
621 type: OS::TripleO::Tasks::CephStoragePostConfig
623 - ControllerDeployment_Step5
624 - ComputeDeployment_Step5
625 - BlockStorageDeployment_Step5
626 - ObjectStorageDeployment_Step5
627 - CephStorageDeployment_Step5
629 servers: {get_param: servers}
631 update_identifier: {get_param: DeployIdentifier}
633 # Note, this should come last, so use depends_on to ensure
634 # this is created after any other resources.
635 CephStorageExtraConfigPost:
637 - ControllerPostConfig
639 - BlockStoragePostConfig
640 - ObjectStoragePostConfig
641 - CephStoragePostConfig
642 type: OS::TripleO::NodeExtraConfigPost
644 servers: {get_param: [servers, CephStorage]}