composable keystone services
[apex-tripleo-heat-templates.git] / puppet / controller-post.yaml
index ed8129e..80b08a0 100644 (file)
@@ -13,10 +13,22 @@ parameters:
   NodeConfigIdentifiers:
      type: json
      description: Value which changes if the node configuration may need to be re-applied
-
+  StepConfig:
+     type: string
+     description: Config manifests that will be used to step through the deployment.
+     default: ''
 
 resources:
 
+  ControllerArtifactsConfig:
+    type: deploy-artifacts.yaml
+
+  ControllerArtifactsDeploy:
+    type: OS::Heat::StructuredDeployments
+    properties:
+      servers:  {get_param: servers}
+      config: {get_resource: ControllerArtifactsConfig}
+
   ControllerPrePuppet:
     type: OS::TripleO::Tasks::ControllerPrePuppet
     properties:
@@ -26,6 +38,8 @@ resources:
 
   ControllerPuppetConfig:
     type: OS::TripleO::ControllerConfig
+    properties:
+      StepConfig: {get_param: StepConfig}
 
   # Step through a series of Puppet runs using the same manifest.
   # NOTE: To enable stepping through the deployments via heat hooks,
@@ -33,8 +47,9 @@ resources:
   # e.g all Deployment resources should have a *Deployment_StepN suffix
   ControllerLoadBalancerDeployment_Step1:
     type: OS::Heat::StructuredDeployments
-    depends_on: ControllerPrePuppet
+    depends_on: [ControllerPrePuppet, ControllerArtifactsDeploy]
     properties:
+      name: ControllerLoadBalancerDeployment_Step1
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
@@ -46,6 +61,7 @@ resources:
     type: OS::Heat::StructuredDeployments
     depends_on: ControllerLoadBalancerDeployment_Step1
     properties:
+      name: ControllerServicesBaseDeployment_Step2
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
@@ -53,62 +69,64 @@ resources:
         update_identifier: {get_param: NodeConfigIdentifiers}
       actions: ['CREATE'] # no need for two passes on an UPDATE
 
-  ControllerRingbuilderPuppetConfig:
-    type: OS::Heat::SoftwareConfig
-    properties:
-      group: puppet
-      options:
-        enable_debug: {get_param: ConfigDebug}
-        enable_hiera: True
-        enable_facter: False
-      inputs:
-      outputs:
-      - name: result
-      config:
-        get_file: manifests/ringbuilder.pp
-
-  ControllerRingbuilderDeployment_Step3:
+  ControllerOvercloudServicesDeployment_Step3:
     type: OS::Heat::StructuredDeployments
     depends_on: ControllerServicesBaseDeployment_Step2
     properties:
+      name: ControllerOvercloudServicesDeployment_Step3
       servers:  {get_param: servers}
-      config: {get_resource: ControllerRingbuilderPuppetConfig}
+      config: {get_resource: ControllerPuppetConfig}
       input_values:
+        step: 3
         update_identifier: {get_param: NodeConfigIdentifiers}
 
   ControllerOvercloudServicesDeployment_Step4:
     type: OS::Heat::StructuredDeployments
-    depends_on: ControllerRingbuilderDeployment_Step3
+    depends_on: ControllerOvercloudServicesDeployment_Step3
     properties:
+      name: ControllerOvercloudServicesDeployment_Step4
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
-        step: 3
+        step: 4
         update_identifier: {get_param: NodeConfigIdentifiers}
 
   ControllerOvercloudServicesDeployment_Step5:
     type: OS::Heat::StructuredDeployments
     depends_on: ControllerOvercloudServicesDeployment_Step4
     properties:
+      name: ControllerOvercloudServicesDeployment_Step5
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
-        step: 4
+        step: 5
         update_identifier: {get_param: NodeConfigIdentifiers}
 
   ControllerOvercloudServicesDeployment_Step6:
     type: OS::Heat::StructuredDeployments
     depends_on: ControllerOvercloudServicesDeployment_Step5
     properties:
+      name: ControllerOvercloudServicesDeployment_Step6
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
-        step: 5
+        step: 6
+        update_identifier: {get_param: NodeConfigIdentifiers}
+
+  ControllerOvercloudServicesDeployment_Step7:
+    type: OS::Heat::StructuredDeployments
+    depends_on: ControllerOvercloudServicesDeployment_Step6
+    properties:
+      name: ControllerOvercloudServicesDeployment_Step7
+      servers:  {get_param: servers}
+      config: {get_resource: ControllerPuppetConfig}
+      input_values:
+        step: 7
         update_identifier: {get_param: NodeConfigIdentifiers}
 
   ControllerPostPuppet:
     type: OS::TripleO::Tasks::ControllerPostPuppet
-    depends_on: ControllerOvercloudServicesDeployment_Step6
+    depends_on: ControllerOvercloudServicesDeployment_Step7
     properties:
       servers:  {get_param: servers}
       input_values: