From 14f0f53e49e561bbee0f68ab8ac5dfe4d5c34181 Mon Sep 17 00:00:00 2001 From: Alex Kavanagh Date: Sun, 4 Aug 2019 15:40:38 +0100 Subject: [PATCH 1/2] Add a subordinate blacklist for pausing services During the series upgrade tests, zaza pauses subordinate services. However, the cinder-ceph charm has no pause/resume action, and so the test fails. This PR adds a blacklist that ensures that the cinder-ceph subordinate is not paused during series upgrade. --- zaza/openstack/utilities/generic.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/zaza/openstack/utilities/generic.py b/zaza/openstack/utilities/generic.py index 6990998..fa6651a 100644 --- a/zaza/openstack/utilities/generic.py +++ b/zaza/openstack/utilities/generic.py @@ -27,6 +27,11 @@ from zaza.openstack.utilities import exceptions as zaza_exceptions from zaza.openstack.utilities.os_versions import UBUNTU_OPENSTACK_RELEASE +SUBORDINATE_PAUSE_RESUME_BLACKLIST = [ + "cinder-ceph", +] + + def dict_to_yaml(dict_data): """Return YAML from dictionary. @@ -286,8 +291,13 @@ def series_upgrade_application(application, pause_non_leader_primary=True, if pause_non_leader_subordinate: if status["units"][unit].get("subordinates"): for subordinate in status["units"][unit]["subordinates"]: - logging.info("Pausing {}".format(subordinate)) - model.run_action(subordinate, "pause", action_params={}) + if subordinate in SUBORDINATE_PAUSE_RESUME_BLACKLIST: + logging.info("Skipping pausing {} - blacklisted" + .format(subordinate)) + else: + logging.info("Pausing {}".format(subordinate)) + model.run_action( + subordinate, "pause", action_params={}) if pause_non_leader_primary: logging.info("Pausing {}".format(unit)) model.run_action(unit, "pause", action_params={}) From f06b957081b72412e36f90f0b100631f32a70468 Mon Sep 17 00:00:00 2001 From: Alex Kavanagh Date: Mon, 5 Aug 2019 09:31:05 +0100 Subject: [PATCH 2/2] Fix issue that it's a unit rather than app This matches on an unit, rather than an app, which was the original intention. --- zaza/openstack/utilities/generic.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/zaza/openstack/utilities/generic.py b/zaza/openstack/utilities/generic.py index fa6651a..9bb4bc9 100644 --- a/zaza/openstack/utilities/generic.py +++ b/zaza/openstack/utilities/generic.py @@ -291,7 +291,8 @@ def series_upgrade_application(application, pause_non_leader_primary=True, if pause_non_leader_subordinate: if status["units"][unit].get("subordinates"): for subordinate in status["units"][unit]["subordinates"]: - if subordinate in SUBORDINATE_PAUSE_RESUME_BLACKLIST: + _app = subordinate.split('/')[0] + if _app in SUBORDINATE_PAUSE_RESUME_BLACKLIST: logging.info("Skipping pausing {} - blacklisted" .format(subordinate)) else: