Merge "Remove NeutronEnableTunnelling from templates"
[apex-tripleo-heat-templates.git] / extraconfig / tasks / major_upgrade_pacemaker.yaml
index 1080fd1..c70a954 100644 (file)
@@ -20,6 +20,12 @@ parameters:
     type: string
     description: Nova Compute upgrade level
     default: ''
+  MySqlMajorUpgrade:
+    type: string
+    description: Can be auto,yes,no and influences if the major upgrade should do or detect an automatic mysql upgrade
+    constraints:
+    - allowed_values: ['auto', 'yes', 'no']
+    default: 'auto'
 
 resources:
   # TODO(jistr): for Mitaka->Newton upgrades and further we can use
@@ -39,7 +45,14 @@ resources:
                 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_pacemaker_migrations.sh
           - get_file: major_upgrade_controller_pacemaker_1.sh
 
   ControllerPacemakerUpgradeDeployment_Step1:
@@ -49,6 +62,20 @@ resources:
       config: {get_resource: ControllerPacemakerUpgradeConfig_Step1}
       input_values: {get_param: input_values}
 
+  BlockStorageUpgradeConfig:
+    type: OS::Heat::SoftwareConfig
+    depends_on: ControllerPacemakerUpgradeDeployment_Step1
+    properties:
+      group: script
+      config: {get_file: major_upgrade_block_storage.sh}
+
+  BlockStorageUpgradeDeployment:
+    type: OS::Heat::SoftwareDeploymentGroup
+    properties:
+      servers:  {get_param: blockstorage_servers}
+      config: {get_resource: BlockStorageUpgradeConfig}
+      input_values: {get_param: input_values}
+
   ControllerPacemakerUpgradeConfig_Step2:
     type: OS::Heat::SoftwareConfig
     properties:
@@ -57,12 +84,14 @@ resources:
         list_join:
         - ''
         - - get_file: pacemaker_common_functions.sh
+          - get_file: major_upgrade_pacemaker_migrations.sh
           - get_file: major_upgrade_controller_pacemaker_2.sh
 
   ControllerPacemakerUpgradeDeployment_Step2:
     type: OS::Heat::SoftwareDeploymentGroup
-    depends_on: ControllerPacemakerUpgradeDeployment_Step1
+    depends_on: BlockStorageUpgradeDeployment
     properties:
       servers:  {get_param: controller_servers}
       config: {get_resource: ControllerPacemakerUpgradeConfig_Step2}
       input_values: {get_param: input_values}
+