Merge "Increase RabbitMQ maximum file descriptors."
[apex-tripleo-heat-templates.git] / puppet / controller-post.yaml
index bfb69a1..36f9b4f 100644 (file)
@@ -13,12 +13,33 @@ 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:
+      servers:  {get_param: servers}
+      input_values:
+        update_identifier: {get_param: NodeConfigIdentifiers}
+
   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,
@@ -26,6 +47,7 @@ resources:
   # e.g all Deployment resources should have a *Deployment_StepN suffix
   ControllerLoadBalancerDeployment_Step1:
     type: OS::Heat::StructuredDeployments
+    depends_on: [ControllerPrePuppet, ControllerArtifactsDeploy]
     properties:
       name: ControllerLoadBalancerDeployment_Step1
       servers:  {get_param: servers}
@@ -33,7 +55,6 @@ resources:
       input_values:
         step: 1
         update_identifier: {get_param: NodeConfigIdentifiers}
-      actions: ['CREATE'] # no need for two passes on an UPDATE
 
   ControllerServicesBaseDeployment_Step2:
     type: OS::Heat::StructuredDeployments
@@ -45,41 +66,27 @@ resources:
       input_values:
         step: 2
         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: ControllerRingbuilderDeployment_Step3
+      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:
@@ -90,24 +97,21 @@ resources:
       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
+  ControllerPostPuppet:
+    type: OS::TripleO::Tasks::ControllerPostPuppet
     depends_on: ControllerOvercloudServicesDeployment_Step5
     properties:
-      name: ControllerOvercloudServicesDeployment_Step6
       servers:  {get_param: servers}
-      config: {get_resource: ControllerPuppetConfig}
       input_values:
-        step: 5
         update_identifier: {get_param: NodeConfigIdentifiers}
 
   # Note, this should come last, so use depends_on to ensure
   # this is created after any other resources.
   ExtraConfig:
-    depends_on: ControllerOvercloudServicesDeployment_Step5
+    depends_on: ControllerPostPuppet
     type: OS::TripleO::NodeExtraConfigPost
     properties:
         servers: {get_param: servers}