diff --git a/charms_openstack/charm/classes.py b/charms_openstack/charm/classes.py index 46f1977..a71071a 100644 --- a/charms_openstack/charm/classes.py +++ b/charms_openstack/charm/classes.py @@ -175,7 +175,7 @@ class OpenStackCharm(BaseOpenStackCharm, actions = { 'pause': os_utils.pause_unit, 'resume': os_utils.resume_unit} - pause_services = self.services + pause_services = self.services[:] if self.haproxy_enabled(): pause_services.append('haproxy') actions[action](self.assess_status, services=pause_services) @@ -188,6 +188,17 @@ class OpenStackCharm(BaseOpenStackCharm, """Resume the charms services.""" self.run_pause_or_resume('resume') + def series_upgrade_prepare(self): + """Prepare to upgrade series""" + os_utils.set_unit_upgrading() + self.run_pause_or_resume('pause') + + def series_upgrade_complete(self): + """Prepare to upgrade series""" + os_utils.clear_unit_paused() + os_utils.clear_unit_upgrading() + self.run_pause_or_resume('resume') + class OpenStackAPICharm(OpenStackCharm): """The base class for API OS charms -- this just bakes in the default