Request a restart of memcached after a service upgrade after queens

Change-Id: I54b235de947e63e3d7b86ccfdba9f1b968b75650
Closes-Bug: #1828534
This commit is contained in:
Chris MacNaughton 2020-06-03 14:02:57 +02:00
parent 1058b9e9d5
commit 5c929b3ba9
2 changed files with 25 additions and 0 deletions

View File

@ -643,6 +643,18 @@ class DesignateCharmQueens(DesignateCharm):
'config(dns-slaves) or both.')
return None, None
def run_upgrade(self, interfaces_list=None):
"""Upgrade OpenStack if an upgrade is available and action-managed
upgrades is not enabled.
:param interfaces_list: List of instances of interface classes
:returns: None
"""
super(DesignateCharmQueens, self).run_upgrade(
interfaces_list=interfaces_list)
memcached = relations.endpoint_from_flag(
'coordinator-memcached.available')
memcached.request_restart()
# Inheriting from DesignateCharmQueens allows to keep
# enforcing nameservers' assignment while changing

View File

@ -362,3 +362,16 @@ class TestDesignateCharm(Helper):
with designate.DesignateCharm.check_zone_ids('novadom', 'neutrondom'):
pass
self.assertFalse(self.leader_set.called)
class TestDesignateQueensCharm(Helper):
def test_upgrade(self):
self.patch(designate.DesignateCharm, 'run_upgrade')
self.patch(designate.relations, 'endpoint_from_flag')
endpoint = mock.MagicMock()
self.endpoint_from_flag.return_value = endpoint
a = designate.DesignateCharmQueens(release='queens')
a.run_upgrade()
self.run_upgrade.assert_called_once_with(interfaces_list=None)
endpoint.request_restart.assert_called_once_with()