Convert deploy steps to jinja2 loop
authorSteven Hardy <shardy@redhat.com>
Wed, 7 Sep 2016 16:05:56 +0000 (17:05 +0100)
committerEmilien Macchi <emilien@redhat.com>
Fri, 16 Sep 2016 00:24:24 +0000 (00:24 +0000)
Refactor so the post-deploy steps recently moved into
puppet/post.yaml are generated by jinja2 instead of hard-coded

Change-Id: I488e46aaa449c95571bd3d1de9513c3d0730baf3
Partially-Implements: blueprint custom-roles

overcloud.j2.yaml
puppet/post.j2.yaml [new file with mode: 0644]
puppet/post.yaml [deleted file]

index fa160e4..ec4db84 100644 (file)
@@ -460,17 +460,13 @@ resources:
     type: OS::TripleO::PostDeploySteps
     properties:
       servers:
-        Controller: {get_attr: [Controller, attributes, nova_server_resource]}
-        Compute: {get_attr: [Compute, attributes, nova_server_resource]}
-        BlockStorage: {get_attr: [BlockStorage, attributes, nova_server_resource]}
-        ObjectStorage: {get_attr: [ObjectStorage, attributes, nova_server_resource]}
-        CephStorage: {get_attr: [CephStorage, attributes, nova_server_resource]}
+{% for role in roles %}
+        {{role.name}}: {get_attr: [{{role.name}}, attributes, nova_server_resource]}
+{% endfor %}
       role_data:
-        Controller: {get_attr: [ControllerServiceChain, role_data]}
-        Compute: {get_attr: [ComputeServiceChain, role_data]}
-        BlockStorage: {get_attr: [BlockStorageServiceChain, role_data]}
-        ObjectStorage: {get_attr: [ObjectStorageServiceChain, role_data]}
-        CephStorage: {get_attr: [CephStorageServiceChain, role_data]}
+{% for role in roles %}
+        {{role.name}}: {get_attr: [{{role.name}}ServiceChain, role_data]}
+{% endfor %}
 
 outputs:
   ManagedEndpoints:
diff --git a/puppet/post.j2.yaml b/puppet/post.j2.yaml
new file mode 100644 (file)
index 0000000..65c96ac
--- /dev/null
@@ -0,0 +1,139 @@
+heat_template_version: 2016-10-14
+
+description: >
+  Post-deploy configuration steps via puppet for all roles,
+  as defined in ../roles_data.yaml
+
+parameters:
+  servers:
+    type: json
+    description: Mapping of Role name e.g Controller to a list of servers
+
+  role_data:
+    type: json
+    description: Mapping of Role name e.g Controller to the per-role data
+
+  DeployIdentifier:
+    default: ''
+    type: string
+    description: >
+      Setting this to a unique value will re-run any deployment tasks which
+      perform configuration on a Heat stack-update.
+
+resources:
+
+{% for role in roles %}
+  # Post deployment steps for all roles
+  # A single config is re-applied with an incrementing step number
+  # {{role.name}} Role steps
+  {{role.name}}ArtifactsConfig:
+    type: deploy-artifacts.yaml
+
+  {{role.name}}ArtifactsDeploy:
+    type: OS::Heat::StructuredDeployments
+    properties:
+      servers:  {get_param: [servers, {{role.name}}]}
+      config: {get_resource: {{role.name}}ArtifactsConfig}
+
+  {{role.name}}PreConfig:
+    type: OS::TripleO::Tasks::{{role.name}}PreConfig
+    properties:
+      servers: {get_param: [servers, {{role.name}}]}
+      input_values:
+        update_identifier: {get_param: DeployIdentifier}
+
+  {{role.name}}Config:
+    type: OS::TripleO::{{role.name}}Config
+    properties:
+      StepConfig: {get_param: [role_data, {{role.name}}, step_config]}
+
+  # Step through a series of configuration steps
+  {{role.name}}Deployment_Step1:
+    type: OS::Heat::StructuredDeploymentGroup
+    depends_on: [{{role.name}}PreConfig, {{role.name}}ArtifactsDeploy]
+    properties:
+      name: {{role.name}}Deployment_Step1
+      servers: {get_param: [servers, {{role.name}}]}
+      config: {get_resource: {{role.name}}Config}
+      input_values:
+        step: 1
+        update_identifier: {get_param: DeployIdentifier}
+
+  {{role.name}}Deployment_Step2:
+    type: OS::Heat::StructuredDeploymentGroup
+    depends_on:
+  {% for dep in roles %}
+      - {{dep.name}}Deployment_Step1
+  {% endfor %}
+    properties:
+      name: {{role.name}}Deployment_Step2
+      servers: {get_param: [servers, {{role.name}}]}
+      config: {get_resource: {{role.name}}Config}
+      input_values:
+        step: 2
+        update_identifier: {get_param: DeployIdentifier}
+
+  {{role.name}}Deployment_Step3:
+    type: OS::Heat::StructuredDeploymentGroup
+    depends_on:
+  {% for dep in roles %}
+      - {{dep.name}}Deployment_Step2
+  {% endfor %}
+    properties:
+      name: {{role.name}}Deployment_Step3
+      servers: {get_param: [servers, {{role.name}}]}
+      config: {get_resource: {{role.name}}Config}
+      input_values:
+        step: 3
+        update_identifier: {get_param: DeployIdentifier}
+
+  {{role.name}}Deployment_Step4:
+    type: OS::Heat::StructuredDeploymentGroup
+    depends_on:
+  {% for dep in roles %}
+      - {{dep.name}}Deployment_Step3
+  {% endfor %}
+    properties:
+      name: {{role.name}}Deployment_Step4
+      servers: {get_param: [servers, {{role.name}}]}
+      config: {get_resource: {{role.name}}Config}
+      input_values:
+        step: 4
+        update_identifier: {get_param: DeployIdentifier}
+
+  {{role.name}}Deployment_Step5:
+    type: OS::Heat::StructuredDeploymentGroup
+    depends_on:
+  {% for dep in roles %}
+      - {{dep.name}}Deployment_Step4
+  {% endfor %}
+    properties:
+      name: {{role.name}}Deployment_Step5
+      servers: {get_param: [servers, {{role.name}}]}
+      config: {get_resource: {{role.name}}Config}
+      input_values:
+        step: 5
+        update_identifier: {get_param: DeployIdentifier}
+
+  {{role.name}}PostConfig:
+    type: OS::TripleO::Tasks::{{role.name}}PostConfig
+    depends_on:
+  {% for dep in roles %}
+      - {{dep.name}}Deployment_Step5
+  {% endfor %}
+    properties:
+      servers:  {get_param: servers}
+      input_values:
+        update_identifier: {get_param: DeployIdentifier}
+
+  # Note, this should come last, so use depends_on to ensure
+  # this is created after any other resources.
+  {{role.name}}ExtraConfigPost:
+    depends_on:
+  {% for dep in roles %}
+      - {{dep.name}}PostConfig
+  {% endfor %}
+    type: OS::TripleO::NodeExtraConfigPost
+    properties:
+        servers: {get_param: [servers, {{role.name}}]}
+{% endfor %}
diff --git a/puppet/post.yaml b/puppet/post.yaml
deleted file mode 100644 (file)
index 8f57b34..0000000
+++ /dev/null
@@ -1,644 +0,0 @@
-heat_template_version: 2016-10-14
-
-description: >
-  Post-deploy configuration steps via puppet for all roles,
-  Controller, Compute, BlockStorage, SwiftStorage and CephStorage.
-
-parameters:
-  servers:
-    type: json
-    description: Mapping of Role name e.g Controller to a list of servers
-
-  role_data:
-    type: json
-    description: Mapping of Role name e.g Controller to the per-role data
-
-  DeployIdentifier:
-    default: ''
-    type: string
-    description: >
-      Setting this to a unique value will re-run any deployment tasks which
-      perform configuration on a Heat stack-update.
-
-resources:
-  # Post deployment steps for all roles
-  # A single config is re-applied with an incrementing step number
-  # Controller Role steps
-  ControllerArtifactsConfig:
-    type: deploy-artifacts.yaml
-
-  ControllerArtifactsDeploy:
-    type: OS::Heat::StructuredDeployments
-    properties:
-      servers:  {get_param: [servers, Controller]}
-      config: {get_resource: ControllerArtifactsConfig}
-
-  ControllerPreConfig:
-    type: OS::TripleO::Tasks::ControllerPreConfig
-    properties:
-      servers: {get_param: [servers, Controller]}
-      input_values:
-        update_identifier: {get_param: DeployIdentifier}
-
-  ControllerConfig:
-    type: OS::TripleO::ControllerConfig
-    properties:
-      StepConfig: {get_param: [role_data, Controller, step_config]}
-
-  # Step through a series of configuration steps
-  ControllerDeployment_Step1:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on: [ControllerPreConfig, ControllerArtifactsDeploy]
-    properties:
-      name: ControllerDeployment_Step1
-      servers: {get_param: [servers, Controller]}
-      config: {get_resource: ControllerConfig}
-      input_values:
-        step: 1
-        update_identifier: {get_param: DeployIdentifier}
-
-  ControllerDeployment_Step2:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step1
-      - ComputeDeployment_Step1
-      - BlockStorageDeployment_Step1
-      - ObjectStorageDeployment_Step1
-      - CephStorageDeployment_Step1
-    properties:
-      name: ControllerDeployment_Step2
-      servers: {get_param: [servers, Controller]}
-      config: {get_resource: ControllerConfig}
-      input_values:
-        step: 2
-        update_identifier: {get_param: DeployIdentifier}
-
-  ControllerDeployment_Step3:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step2
-      - ComputeDeployment_Step2
-      - BlockStorageDeployment_Step2
-      - ObjectStorageDeployment_Step2
-      - CephStorageDeployment_Step2
-    properties:
-      name: ControllerDeployment_Step3
-      servers: {get_param: [servers, Controller]}
-      config: {get_resource: ControllerConfig}
-      input_values:
-        step: 3
-        update_identifier: {get_param: DeployIdentifier}
-
-  ControllerDeployment_Step4:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step3
-      - ComputeDeployment_Step3
-      - BlockStorageDeployment_Step3
-      - ObjectStorageDeployment_Step3
-      - CephStorageDeployment_Step3
-    properties:
-      name: ControllerDeployment_Step4
-      servers: {get_param: [servers, Controller]}
-      config: {get_resource: ControllerConfig}
-      input_values:
-        step: 4
-        update_identifier: {get_param: DeployIdentifier}
-
-  ControllerDeployment_Step5:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step4
-      - ComputeDeployment_Step4
-      - BlockStorageDeployment_Step4
-      - ObjectStorageDeployment_Step4
-      - CephStorageDeployment_Step4
-    properties:
-      name: ControllerDeployment_Step5
-      servers: {get_param: [servers, Controller]}
-      config: {get_resource: ControllerConfig}
-      input_values:
-        step: 5
-        update_identifier: {get_param: DeployIdentifier}
-
-  ControllerPostConfig:
-    type: OS::TripleO::Tasks::ControllerPostConfig
-    depends_on:
-      - ControllerDeployment_Step5
-      - ComputeDeployment_Step5
-      - BlockStorageDeployment_Step5
-      - ObjectStorageDeployment_Step5
-      - CephStorageDeployment_Step5
-    properties:
-      servers:  {get_param: servers}
-      input_values:
-        update_identifier: {get_param: DeployIdentifier}
-
-  # Note, this should come last, so use depends_on to ensure
-  # this is created after any other resources.
-  ControllerExtraConfigPost:
-    depends_on:
-      - ControllerPostConfig
-      - ComputePostConfig
-      - BlockStoragePostConfig
-      - ObjectStoragePostConfig
-      - CephStoragePostConfig
-    type: OS::TripleO::NodeExtraConfigPost
-    properties:
-        servers: {get_param: [servers, Controller]}
-
-  # Compute Role steps
-  ComputeArtifactsConfig:
-    type: deploy-artifacts.yaml
-
-  ComputeArtifactsDeploy:
-    type: OS::Heat::StructuredDeployments
-    properties:
-      servers:  {get_param: [servers, Compute]}
-      config: {get_resource: ComputeArtifactsConfig}
-
-  ComputePreConfig:
-    type: OS::TripleO::Tasks::ComputePreConfig
-    properties:
-      servers: {get_param: [servers, Compute]}
-      input_values:
-        update_identifier: {get_param: DeployIdentifier}
-
-  ComputeConfig:
-    type: OS::TripleO::ComputeConfig
-    properties:
-      StepConfig: {get_param: [role_data, Compute, step_config]}
-
-  # Step through a series of configuration steps
-  ComputeDeployment_Step1:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on: [ComputePreConfig, ComputeArtifactsDeploy]
-    properties:
-      name: ComputeDeployment_Step1
-      servers: {get_param: [servers, Compute]}
-      config: {get_resource: ComputeConfig}
-      input_values:
-        step: 1
-        update_identifier: {get_param: DeployIdentifier}
-
-  ComputeDeployment_Step2:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step1
-      - ComputeDeployment_Step1
-      - BlockStorageDeployment_Step1
-      - ObjectStorageDeployment_Step1
-      - CephStorageDeployment_Step1
-    properties:
-      name: ComputeDeployment_Step2
-      servers: {get_param: [servers, Compute]}
-      config: {get_resource: ComputeConfig}
-      input_values:
-        step: 2
-        update_identifier: {get_param: DeployIdentifier}
-
-  ComputeDeployment_Step3:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step2
-      - ComputeDeployment_Step2
-      - BlockStorageDeployment_Step2
-      - ObjectStorageDeployment_Step2
-      - CephStorageDeployment_Step2
-    properties:
-      name: ComputeDeployment_Step3
-      servers: {get_param: [servers, Compute]}
-      config: {get_resource: ComputeConfig}
-      input_values:
-        step: 3
-        update_identifier: {get_param: DeployIdentifier}
-
-  ComputeDeployment_Step4:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step3
-      - ComputeDeployment_Step3
-      - BlockStorageDeployment_Step3
-      - ObjectStorageDeployment_Step3
-      - CephStorageDeployment_Step3
-    properties:
-      name: ComputeDeployment_Step4
-      servers: {get_param: [servers, Compute]}
-      config: {get_resource: ComputeConfig}
-      input_values:
-        step: 4
-        update_identifier: {get_param: DeployIdentifier}
-
-  ComputeDeployment_Step5:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step4
-      - ComputeDeployment_Step4
-      - BlockStorageDeployment_Step4
-      - ObjectStorageDeployment_Step4
-      - CephStorageDeployment_Step4
-    properties:
-      name: ComputeDeployment_Step5
-      servers: {get_param: [servers, Compute]}
-      config: {get_resource: ComputeConfig}
-      input_values:
-        step: 5
-        update_identifier: {get_param: DeployIdentifier}
-
-  ComputePostConfig:
-    type: OS::TripleO::Tasks::ComputePostConfig
-    depends_on:
-      - ControllerDeployment_Step5
-      - ComputeDeployment_Step5
-      - BlockStorageDeployment_Step5
-      - ObjectStorageDeployment_Step5
-      - CephStorageDeployment_Step5
-    properties:
-      servers:  {get_param: servers}
-      input_values:
-        update_identifier: {get_param: DeployIdentifier}
-
-  # Note, this should come last, so use depends_on to ensure
-  # this is created after any other resources.
-  ComputeExtraConfigPost:
-    depends_on:
-      - ControllerPostConfig
-      - ComputePostConfig
-      - BlockStoragePostConfig
-      - ObjectStoragePostConfig
-      - CephStoragePostConfig
-    type: OS::TripleO::NodeExtraConfigPost
-    properties:
-      servers: {get_param: [servers, Compute]}
-
-  # BlockStorage Role steps
-  BlockStorageArtifactsConfig:
-    type: deploy-artifacts.yaml
-
-  BlockStorageArtifactsDeploy:
-    type: OS::Heat::StructuredDeployments
-    properties:
-      servers:  {get_param: [servers, BlockStorage]}
-      config: {get_resource: BlockStorageArtifactsConfig}
-
-  BlockStoragePreConfig:
-    type: OS::TripleO::Tasks::BlockStoragePreConfig
-    properties:
-      servers: {get_param: [servers, BlockStorage]}
-      input_values:
-        update_identifier: {get_param: DeployIdentifier}
-
-  BlockStorageConfig:
-    type: OS::TripleO::BlockStorageConfig
-    properties:
-      StepConfig: {get_param: [role_data, BlockStorage, step_config]}
-
-  # Step through a series of configuration steps
-  BlockStorageDeployment_Step1:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on: [BlockStoragePreConfig, BlockStorageArtifactsDeploy]
-    properties:
-      name: BlockStorageDeployment_Step1
-      servers: {get_param: [servers, BlockStorage]}
-      config: {get_resource: BlockStorageConfig}
-      input_values:
-        step: 1
-        update_identifier: {get_param: DeployIdentifier}
-
-  BlockStorageDeployment_Step2:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step1
-      - ComputeDeployment_Step1
-      - BlockStorageDeployment_Step1
-      - ObjectStorageDeployment_Step1
-      - CephStorageDeployment_Step1
-    properties:
-      name: BlockStorageDeployment_Step2
-      servers: {get_param: [servers, BlockStorage]}
-      config: {get_resource: BlockStorageConfig}
-      input_values:
-        step: 2
-        update_identifier: {get_param: DeployIdentifier}
-
-  BlockStorageDeployment_Step3:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step2
-      - ComputeDeployment_Step2
-      - BlockStorageDeployment_Step2
-      - ObjectStorageDeployment_Step2
-      - CephStorageDeployment_Step2
-    properties:
-      name: BlockStorageDeployment_Step3
-      servers: {get_param: [servers, BlockStorage]}
-      config: {get_resource: BlockStorageConfig}
-      input_values:
-        step: 3
-        update_identifier: {get_param: DeployIdentifier}
-
-  BlockStorageDeployment_Step4:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step3
-      - ComputeDeployment_Step3
-      - BlockStorageDeployment_Step3
-      - ObjectStorageDeployment_Step3
-      - CephStorageDeployment_Step3
-    properties:
-      name: BlockStorageDeployment_Step4
-      servers: {get_param: [servers, BlockStorage]}
-      config: {get_resource: BlockStorageConfig}
-      input_values:
-        step: 4
-        update_identifier: {get_param: DeployIdentifier}
-
-  BlockStorageDeployment_Step5:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step4
-      - ComputeDeployment_Step4
-      - BlockStorageDeployment_Step4
-      - ObjectStorageDeployment_Step4
-      - CephStorageDeployment_Step4
-    properties:
-      name: BlockStorageDeployment_Step5
-      servers: {get_param: [servers, BlockStorage]}
-      config: {get_resource: BlockStorageConfig}
-      input_values:
-        step: 5
-        update_identifier: {get_param: DeployIdentifier}
-
-  BlockStoragePostConfig:
-    type: OS::TripleO::Tasks::BlockStoragePostConfig
-    depends_on:
-      - ControllerDeployment_Step5
-      - ComputeDeployment_Step5
-      - BlockStorageDeployment_Step5
-      - ObjectStorageDeployment_Step5
-      - CephStorageDeployment_Step5
-    properties:
-      servers:  {get_param: servers}
-      input_values:
-        update_identifier: {get_param: DeployIdentifier}
-
-  # Note, this should come last, so use depends_on to ensure
-  # this is created after any other resources.
-  BlockStorageExtraConfigPost:
-    depends_on:
-      - ControllerPostConfig
-      - ComputePostConfig
-      - BlockStoragePostConfig
-      - ObjectStoragePostConfig
-      - CephStoragePostConfig
-    type: OS::TripleO::NodeExtraConfigPost
-    properties:
-        servers: {get_param: [servers, BlockStorage]}
-
-  # ObjectStorage Role steps
-  ObjectStorageArtifactsConfig:
-    type: deploy-artifacts.yaml
-
-  ObjectStorageArtifactsDeploy:
-    type: OS::Heat::StructuredDeployments
-    properties:
-      servers:  {get_param: [servers, ObjectStorage]}
-      config: {get_resource: ObjectStorageArtifactsConfig}
-
-  ObjectStoragePreConfig:
-    type: OS::TripleO::Tasks::ObjectStoragePreConfig
-    properties:
-      servers: {get_param: [servers, ObjectStorage]}
-      input_values:
-        update_identifier: {get_param: DeployIdentifier}
-
-  ObjectStorageConfig:
-    type: OS::TripleO::ObjectStorageConfig
-    properties:
-      StepConfig: {get_param: [role_data, ObjectStorage, step_config]}
-
-  # Step through a series of configuration steps
-  ObjectStorageDeployment_Step1:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on: [ObjectStoragePreConfig, ObjectStorageArtifactsDeploy]
-    properties:
-      name: ObjectStorageDeployment_Step1
-      servers: {get_param: [servers, ObjectStorage]}
-      config: {get_resource: ObjectStorageConfig}
-      input_values:
-        step: 1
-        update_identifier: {get_param: DeployIdentifier}
-
-  ObjectStorageDeployment_Step2:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step1
-      - ComputeDeployment_Step1
-      - BlockStorageDeployment_Step1
-      - ObjectStorageDeployment_Step1
-      - CephStorageDeployment_Step1
-    properties:
-      name: ObjectStorageDeployment_Step2
-      servers: {get_param: [servers, ObjectStorage]}
-      config: {get_resource: ObjectStorageConfig}
-      input_values:
-        step: 2
-        update_identifier: {get_param: DeployIdentifier}
-
-  ObjectStorageDeployment_Step3:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step2
-      - ComputeDeployment_Step2
-      - BlockStorageDeployment_Step2
-      - ObjectStorageDeployment_Step2
-      - CephStorageDeployment_Step2
-    properties:
-      name: ObjectStorageDeployment_Step3
-      servers: {get_param: [servers, ObjectStorage]}
-      config: {get_resource: ObjectStorageConfig}
-      input_values:
-        step: 3
-        update_identifier: {get_param: DeployIdentifier}
-
-  ObjectStorageDeployment_Step4:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step3
-      - ComputeDeployment_Step3
-      - BlockStorageDeployment_Step3
-      - ObjectStorageDeployment_Step3
-      - CephStorageDeployment_Step3
-    properties:
-      name: ObjectStorageDeployment_Step4
-      servers: {get_param: [servers, ObjectStorage]}
-      config: {get_resource: ObjectStorageConfig}
-      input_values:
-        step: 4
-        update_identifier: {get_param: DeployIdentifier}
-
-  ObjectStorageDeployment_Step5:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step4
-      - ComputeDeployment_Step4
-      - BlockStorageDeployment_Step4
-      - ObjectStorageDeployment_Step4
-      - CephStorageDeployment_Step4
-    properties:
-      name: ObjectStorageDeployment_Step5
-      servers: {get_param: [servers, ObjectStorage]}
-      config: {get_resource: ObjectStorageConfig}
-      input_values:
-        step: 5
-        update_identifier: {get_param: DeployIdentifier}
-
-  ObjectStoragePostConfig:
-    type: OS::TripleO::Tasks::ObjectStoragePostConfig
-    depends_on:
-      - ControllerDeployment_Step5
-      - ComputeDeployment_Step5
-      - BlockStorageDeployment_Step5
-      - ObjectStorageDeployment_Step5
-      - CephStorageDeployment_Step5
-    properties:
-      servers:  {get_param: servers}
-      input_values:
-        update_identifier: {get_param: DeployIdentifier}
-
-  # Note, this should come last, so use depends_on to ensure
-  # this is created after any other resources.
-  ObjectStorageExtraConfigPost:
-    depends_on:
-      - ControllerPostConfig
-      - ComputePostConfig
-      - BlockStoragePostConfig
-      - ObjectStoragePostConfig
-      - CephStoragePostConfig
-    type: OS::TripleO::NodeExtraConfigPost
-    properties:
-        servers: {get_param: [servers, ObjectStorage]}
-
-  # CephStorage Role steps
-  CephStorageArtifactsConfig:
-    type: deploy-artifacts.yaml
-
-  CephStorageArtifactsDeploy:
-    type: OS::Heat::StructuredDeployments
-    properties:
-      servers:  {get_param: [servers, CephStorage]}
-      config: {get_resource: CephStorageArtifactsConfig}
-
-  CephStoragePreConfig:
-    type: OS::TripleO::Tasks::CephStoragePreConfig
-    properties:
-      servers: {get_param: [servers, CephStorage]}
-      input_values:
-        update_identifier: {get_param: DeployIdentifier}
-
-  CephStorageConfig:
-    type: OS::TripleO::CephStorageConfig
-    properties:
-      StepConfig: {get_param: [role_data, CephStorage, step_config]}
-
-  # Step through a series of configuration steps
-  CephStorageDeployment_Step1:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on: [CephStoragePreConfig, CephStorageArtifactsDeploy]
-    properties:
-      name: CephStorageDeployment_Step1
-      servers: {get_param: [servers, CephStorage]}
-      config: {get_resource: CephStorageConfig}
-      input_values:
-        step: 1
-        update_identifier: {get_param: DeployIdentifier}
-
-  CephStorageDeployment_Step2:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step1
-      - ComputeDeployment_Step1
-      - BlockStorageDeployment_Step1
-      - ObjectStorageDeployment_Step1
-      - CephStorageDeployment_Step1
-    properties:
-      name: CephStorageDeployment_Step2
-      servers: {get_param: [servers, CephStorage]}
-      config: {get_resource: CephStorageConfig}
-      input_values:
-        step: 2
-        update_identifier: {get_param: DeployIdentifier}
-
-  CephStorageDeployment_Step3:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step2
-      - ComputeDeployment_Step2
-      - BlockStorageDeployment_Step2
-      - ObjectStorageDeployment_Step2
-      - CephStorageDeployment_Step2
-    properties:
-      name: CephStorageDeployment_Step3
-      servers: {get_param: [servers, CephStorage]}
-      config: {get_resource: CephStorageConfig}
-      input_values:
-        step: 3
-        update_identifier: {get_param: DeployIdentifier}
-
-  CephStorageDeployment_Step4:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step3
-      - ComputeDeployment_Step3
-      - BlockStorageDeployment_Step3
-      - ObjectStorageDeployment_Step3
-      - CephStorageDeployment_Step3
-    properties:
-      name: CephStorageDeployment_Step4
-      servers: {get_param: [servers, CephStorage]}
-      config: {get_resource: CephStorageConfig}
-      input_values:
-        step: 4
-        update_identifier: {get_param: DeployIdentifier}
-
-  CephStorageDeployment_Step5:
-    type: OS::Heat::StructuredDeploymentGroup
-    depends_on:
-      - ControllerDeployment_Step4
-      - ComputeDeployment_Step4
-      - BlockStorageDeployment_Step4
-      - ObjectStorageDeployment_Step4
-      - CephStorageDeployment_Step4
-    properties:
-      name: CephStorageDeployment_Step5
-      servers: {get_param: [servers, CephStorage]}
-      config: {get_resource: CephStorageConfig}
-      input_values:
-        step: 5
-        update_identifier: {get_param: DeployIdentifier}
-
-  CephStoragePostConfig:
-    type: OS::TripleO::Tasks::CephStoragePostConfig
-    depends_on:
-      - ControllerDeployment_Step5
-      - ComputeDeployment_Step5
-      - BlockStorageDeployment_Step5
-      - ObjectStorageDeployment_Step5
-      - CephStorageDeployment_Step5
-    properties:
-      servers:  {get_param: servers}
-      input_values:
-        update_identifier: {get_param: DeployIdentifier}
-
-  # Note, this should come last, so use depends_on to ensure
-  # this is created after any other resources.
-  CephStorageExtraConfigPost:
-    depends_on:
-      - ControllerPostConfig
-      - ComputePostConfig
-      - BlockStoragePostConfig
-      - ObjectStoragePostConfig
-      - CephStoragePostConfig
-    type: OS::TripleO::NodeExtraConfigPost
-    properties:
-        servers: {get_param: [servers, CephStorage]}