Stop restarting pacemaker-remote on every config changed

This commit is contained in:
Liam Young 2019-03-22 10:50:37 +00:00
parent 92ceb2cdcc
commit f2bc1da54c
2 changed files with 11 additions and 5 deletions

View File

@ -79,6 +79,12 @@ def publish_stonith_info():
stonith_hostname=stonith_hostname)
@reactive.when_file_changed(PACEMAKER_KEY)
def pacmaker_config_changed():
"""Restart all seervices managed by the charm."""
restart_services()
@reactive.when('endpoint.pacemaker-remote.changed.pacemaker-key')
def write_pacemaker_key():
"""Finish setup of pacemaker-remote"""
@ -91,5 +97,4 @@ def write_pacemaker_key():
owner='hacluster',
group='haclient',
perms=0o444)
restart_services()
hookenv.status_set('active', 'Unit is ready')

View File

@ -187,10 +187,8 @@ class TestPAcemakerRemoteHandlers(unittest.TestCase):
endpoint_mock.get_pacemaker_key.return_value = 'corokey'
self.endpoint_from_flag.return_value = endpoint_mock
self.patch(handlers.hookenv, 'status_set')
self.patch(handlers, 'restart_services')
self.patch(handlers.ch_host, 'write_file')
handlers.write_pacemaker_key()
self.restart_services.assert_called_once_with()
self.write_file.assert_called_once_with(
'/etc/pacemaker/authkey',
'corokey',
@ -204,8 +202,11 @@ class TestPAcemakerRemoteHandlers(unittest.TestCase):
endpoint_mock = mock.MagicMock()
endpoint_mock.get_pacemaker_key.return_value = None
self.endpoint_from_flag.return_value = endpoint_mock
self.patch(handlers, 'restart_services')
self.patch(handlers.ch_host, 'write_file')
handlers.write_pacemaker_key()
self.assertFalse(self.restart_services.called)
self.assertFalse(self.write_file.called)
def test_pacmaker_config_changed(self):
self.patch(handlers, 'restart_services')
handlers.pacmaker_config_changed()
self.restart_services.assert_called_once_with()