Merge "Rename opendaylight service to opendaylight_api"
[apex-tripleo-heat-templates.git] / puppet / controller-post.yaml
index ed8129e..4af6cb4 100644 (file)
@@ -10,22 +10,35 @@ parameters:
     type: boolean
   servers:
     type: json
-  NodeConfigIdentifiers:
-     type: json
+  RoleData:
+    type: json
+    default: {}
+  DeployIdentifier:
+     type: string
      description: Value which changes if the node configuration may need to be re-applied
 
-
 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}
+        update_identifier: {get_param: DeployIdentifier}
 
   ControllerPuppetConfig:
     type: OS::TripleO::ControllerConfig
+    properties:
+      StepConfig: {get_param: [RoleData, step_config]}
 
   # Step through a series of Puppet runs using the same manifest.
   # NOTE: To enable stepping through the deployments via heat hooks,
@@ -33,86 +46,66 @@ 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:
         step: 1
-        update_identifier: {get_param: NodeConfigIdentifiers}
-      actions: ['CREATE'] # no need for two passes on an UPDATE
+        update_identifier: {get_param: DeployIdentifier}
 
   ControllerServicesBaseDeployment_Step2:
     type: OS::Heat::StructuredDeployments
     depends_on: ControllerLoadBalancerDeployment_Step1
     properties:
+      name: ControllerServicesBaseDeployment_Step2
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       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
+        update_identifier: {get_param: DeployIdentifier}
 
-  ControllerRingbuilderDeployment_Step3:
+  ControllerOvercloudServicesDeployment_Step3:
     type: OS::Heat::StructuredDeployments
     depends_on: ControllerServicesBaseDeployment_Step2
     properties:
-      servers:  {get_param: servers}
-      config: {get_resource: ControllerRingbuilderPuppetConfig}
-      input_values:
-        update_identifier: {get_param: NodeConfigIdentifiers}
-
-  ControllerOvercloudServicesDeployment_Step4:
-    type: OS::Heat::StructuredDeployments
-    depends_on: ControllerRingbuilderDeployment_Step3
-    properties:
+      name: ControllerOvercloudServicesDeployment_Step3
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
         step: 3
-        update_identifier: {get_param: NodeConfigIdentifiers}
+        update_identifier: {get_param: DeployIdentifier}
 
-  ControllerOvercloudServicesDeployment_Step5:
+  ControllerOvercloudServicesDeployment_Step4:
     type: OS::Heat::StructuredDeployments
-    depends_on: ControllerOvercloudServicesDeployment_Step4
+    depends_on: ControllerOvercloudServicesDeployment_Step3
     properties:
+      name: ControllerOvercloudServicesDeployment_Step4
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
         step: 4
-        update_identifier: {get_param: NodeConfigIdentifiers}
+        update_identifier: {get_param: DeployIdentifier}
 
-  ControllerOvercloudServicesDeployment_Step6:
+  ControllerOvercloudServicesDeployment_Step5:
     type: OS::Heat::StructuredDeployments
-    depends_on: ControllerOvercloudServicesDeployment_Step5
+    depends_on: ControllerOvercloudServicesDeployment_Step4
     properties:
+      name: ControllerOvercloudServicesDeployment_Step5
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
         step: 5
-        update_identifier: {get_param: NodeConfigIdentifiers}
+        update_identifier: {get_param: DeployIdentifier}
 
   ControllerPostPuppet:
     type: OS::TripleO::Tasks::ControllerPostPuppet
-    depends_on: ControllerOvercloudServicesDeployment_Step6
+    depends_on: ControllerOvercloudServicesDeployment_Step5
     properties:
       servers:  {get_param: servers}
       input_values:
-        update_identifier: {get_param: NodeConfigIdentifiers}
+        update_identifier: {get_param: DeployIdentifier}
 
   # Note, this should come last, so use depends_on to ensure
   # this is created after any other resources.