Delivers upgrade scripts where upgrade steps are disabled
[apex-tripleo-heat-templates.git] / extraconfig / tasks / major_upgrade_pacemaker.yaml
index 30ae8d1..b63aafb 100644 (file)
@@ -1,4 +1,4 @@
-heat_template_version: 2016-10-14
+heat_template_version: ocata
 description: 'Upgrade for Pacemaker deployments'
 
 parameters:
@@ -22,6 +22,11 @@ parameters:
     type: boolean
     default: false
     description: If enabled, Ceph upgrade will be forced even though cluster or PGs status is not clean
+  KeepSaharaServicesOnUpgrade:
+    type: boolean
+    default: true
+    description: Whether to keep Sahara services when upgrading controller nodes from mitaka to newton
+
 
 resources:
   # TODO(jistr): for Mitaka->Newton upgrades and further we can use
@@ -92,7 +97,11 @@ resources:
     depends_on: ControllerPacemakerUpgradeDeployment_Step1
     properties:
       group: script
-      config: {get_file: major_upgrade_block_storage.sh}
+      config:
+        list_join:
+        - ''
+        - - get_file: pacemaker_common_functions.sh
+          - get_file: major_upgrade_block_storage.sh
 
   BlockStorageUpgradeDeployment:
     type: OS::Heat::SoftwareDeploymentGroup
@@ -108,7 +117,20 @@ resources:
       config:
         list_join:
         - ''
-        - - get_file: pacemaker_common_functions.sh
+        - - str_replace:
+              template: |
+                #!/bin/bash
+                upgrade_level_nova_compute='UPGRADE_LEVEL_NOVA_COMPUTE'
+              params:
+                UPGRADE_LEVEL_NOVA_COMPUTE: {get_param: UpgradeLevelNovaCompute}
+          - str_replace:
+              template: |
+                #!/bin/bash
+                mariadb_do_major_upgrade='MYSQL_MAJOR_UPGRADE'
+              params:
+                MYSQL_MAJOR_UPGRADE: {get_param: MySqlMajorUpgrade}
+          - get_file: pacemaker_common_functions.sh
+          - get_file: major_upgrade_check.sh
           - get_file: major_upgrade_pacemaker_migrations.sh
           - get_file: major_upgrade_controller_pacemaker_2.sh
 
@@ -139,3 +161,65 @@ resources:
       config: {get_resource: ControllerPacemakerUpgradeConfig_Step3}
       input_values: {get_param: input_values}
 
+  ControllerPacemakerUpgradeConfig_Step4:
+    type: OS::Heat::SoftwareConfig
+    properties:
+      group: script
+      config:
+        list_join:
+        - ''
+        - - get_file: pacemaker_common_functions.sh
+          - get_file: major_upgrade_pacemaker_migrations.sh
+          - get_file: major_upgrade_controller_pacemaker_4.sh
+
+  ControllerPacemakerUpgradeDeployment_Step4:
+    type: OS::Heat::SoftwareDeploymentGroup
+    depends_on: ControllerPacemakerUpgradeDeployment_Step3
+    properties:
+      servers:  {get_param: [servers, Controller]}
+      config: {get_resource: ControllerPacemakerUpgradeConfig_Step4}
+      input_values: {get_param: input_values}
+
+  ControllerPacemakerUpgradeConfig_Step5:
+    type: OS::Heat::SoftwareConfig
+    properties:
+      group: script
+      config:
+        list_join:
+        - ''
+        - - get_file: pacemaker_common_functions.sh
+          - get_file: major_upgrade_pacemaker_migrations.sh
+          - get_file: major_upgrade_controller_pacemaker_5.sh
+
+  ControllerPacemakerUpgradeDeployment_Step5:
+    type: OS::Heat::SoftwareDeploymentGroup
+    depends_on: ControllerPacemakerUpgradeDeployment_Step4
+    properties:
+      servers:  {get_param: [servers, Controller]}
+      config: {get_resource: ControllerPacemakerUpgradeConfig_Step5}
+      input_values: {get_param: input_values}
+
+  ControllerPacemakerUpgradeConfig_Step6:
+    type: OS::Heat::SoftwareConfig
+    properties:
+      group: script
+      config:
+        list_join:
+        - ''
+        - - str_replace:
+              template: |
+                #!/bin/bash
+                keep_sahara_services_on_upgrade='KEEP_SAHARA_SERVICES_ON_UPGRADE'
+              params:
+                KEEP_SAHARA_SERVICES_ON_UPGRADE: {get_param: KeepSaharaServicesOnUpgrade}
+          - get_file: pacemaker_common_functions.sh
+          - get_file: major_upgrade_pacemaker_migrations.sh
+          - get_file: major_upgrade_controller_pacemaker_6.sh
+
+  ControllerPacemakerUpgradeDeployment_Step6:
+    type: OS::Heat::SoftwareDeploymentGroup
+    depends_on: ControllerPacemakerUpgradeDeployment_Step5
+    properties:
+      servers:  {get_param: [servers, Controller]}
+      config: {get_resource: ControllerPacemakerUpgradeConfig_Step6}
+      input_values: {get_param: input_values}