summaryrefslogtreecommitdiffstats
path: root/extraconfig
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2016-03-07 13:38:37 +0000
committerGerrit Code Review <review@openstack.org>2016-03-07 13:38:37 +0000
commit55fb175bed3a020bbc5cb1c41235f0893ac43cc4 (patch)
tree026cab6a3cf207f1783436fb786fc3267e823647 /extraconfig
parent98224f0b511f5387a64e1871f2142236ee1c7712 (diff)
parent3894f1c0ae8f865ea760455edc40f00dc100805d (diff)
Merge "Function library for major upgrades"
Diffstat (limited to 'extraconfig')
-rw-r--r--extraconfig/tasks/major_upgrade_pacemaker.yaml2
-rw-r--r--extraconfig/tasks/major_upgrade_pacemaker_migrations.sh14
2 files changed, 16 insertions, 0 deletions
diff --git a/extraconfig/tasks/major_upgrade_pacemaker.yaml b/extraconfig/tasks/major_upgrade_pacemaker.yaml
index 33c06301..b867d107 100644
--- a/extraconfig/tasks/major_upgrade_pacemaker.yaml
+++ b/extraconfig/tasks/major_upgrade_pacemaker.yaml
@@ -40,6 +40,7 @@ resources:
params:
UPGRADE_LEVEL_NOVA_COMPUTE: {get_param: UpgradeLevelNovaCompute}
- get_file: pacemaker_common_functions.sh
+ - get_file: major_upgrade_pacemaker_migrations.sh
- get_file: major_upgrade_controller_pacemaker_1.sh
ControllerPacemakerUpgradeDeployment_Step1:
@@ -57,6 +58,7 @@ 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:
diff --git a/extraconfig/tasks/major_upgrade_pacemaker_migrations.sh b/extraconfig/tasks/major_upgrade_pacemaker_migrations.sh
new file mode 100644
index 00000000..7fd26945
--- /dev/null
+++ b/extraconfig/tasks/major_upgrade_pacemaker_migrations.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+
+# Special pieces of upgrade migration logic go into this
+# file. E.g. Pacemaker cluster transitions for existing deployments,
+# matching changes to overcloud_controller_pacemaker.pp (Puppet
+# handles deployment, this file handles migrations).
+#
+# This file shouldn't execute any action on its own, all logic should
+# be wrapped into bash functions. Upgrade scripts will source this
+# file and call the functions defined in this file where appropriate.
+#
+# The migration functions should be idempotent. If the migration has
+# been already applied, it should be possible to call the function
+# again without damaging the deployment or failing the upgrade.