Modify the ProcessMonitor class to have one less config parameter
It's a follow up patch, as agreed on the ProcessMonitor review patch to coalesce the check_child_processes parameter into check_child_process_interval. When this parameter is set to 0, the feature is disabled. Change-Id: I2d4d8c6a6b7c17d42d8455c98968f75bcefbb689 Closes-Bug: 1371705
This commit is contained in:
parent
5c4f98cda0
commit
2af1d7e7b4
@ -30,14 +30,12 @@ OPTS = [
|
|||||||
cfg.StrOpt('external_pids',
|
cfg.StrOpt('external_pids',
|
||||||
default='$state_path/external/pids',
|
default='$state_path/external/pids',
|
||||||
help=_('Location to store child pid files')),
|
help=_('Location to store child pid files')),
|
||||||
cfg.BoolOpt('check_child_processes', default=False,
|
|
||||||
help=_("Periodically check child processes")),
|
|
||||||
cfg.StrOpt('check_child_processes_action', default='respawn',
|
cfg.StrOpt('check_child_processes_action', default='respawn',
|
||||||
choices=['respawn', 'exit'],
|
choices=['respawn', 'exit'],
|
||||||
help=_('Action to be executed when a child process dies')),
|
help=_('Action to be executed when a child process dies')),
|
||||||
cfg.IntOpt('check_child_processes_interval', default=60,
|
cfg.IntOpt('check_child_processes_interval', default=0,
|
||||||
help=_('Interval between checks of child process liveness '
|
help=_('Interval between checks of child process liveness '
|
||||||
'(seconds)')),
|
'(seconds), use 0 to disable')),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
@ -156,7 +154,7 @@ class ProcessMonitor(object):
|
|||||||
|
|
||||||
self._process_managers = {}
|
self._process_managers = {}
|
||||||
|
|
||||||
if self._config.check_child_processes:
|
if self._config.check_child_processes_interval:
|
||||||
self._spawn_checking_thread()
|
self._spawn_checking_thread()
|
||||||
|
|
||||||
def enable(self, uuid, cmd_callback, namespace=None, service=None,
|
def enable(self, uuid, cmd_callback, namespace=None, service=None,
|
||||||
|
@ -29,7 +29,6 @@ class BaseTestProcessMonitor(base.BaseSudoTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(BaseTestProcessMonitor, self).setUp()
|
super(BaseTestProcessMonitor, self).setUp()
|
||||||
self._exit_handler_called = False
|
self._exit_handler_called = False
|
||||||
cfg.CONF.set_override('check_child_processes', True)
|
|
||||||
cfg.CONF.set_override('check_child_processes_interval', 1)
|
cfg.CONF.set_override('check_child_processes_interval', 1)
|
||||||
self._child_processes = []
|
self._child_processes = []
|
||||||
self._ext_processes = None
|
self._ext_processes = None
|
||||||
|
Loading…
Reference in New Issue
Block a user