compute: restart OVS agent on neutron.conf changes
[apex-tripleo-heat-templates.git] / puppet / controller-post.yaml
index 49cbe1e..04f20b6 100644 (file)
@@ -4,6 +4,10 @@ description: >
   OpenStack controller node post deployment for Puppet.
 
 parameters:
+  ConfigDebug:
+    default: false
+    description: Whether to run config management (e.g. Puppet) in debug mode.
+    type: boolean
   servers:
     type: json
   NodeConfigIdentifiers:
@@ -13,6 +17,22 @@ parameters:
 
 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
 
@@ -22,7 +42,9 @@ 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}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
@@ -34,6 +56,7 @@ resources:
     type: OS::Heat::StructuredDeployments
     depends_on: ControllerLoadBalancerDeployment_Step1
     properties:
+      name: ControllerServicesBaseDeployment_Step2
       servers:  {get_param: servers}
       config: {get_resource: ControllerPuppetConfig}
       input_values:
@@ -41,62 +64,73 @@ 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_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_Step7
+    properties:
+      servers:  {get_param: servers}
+      input_values:
         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}