From b451d6d488b71ea59fa46a1e1ff0ddbfae437192 Mon Sep 17 00:00:00 2001 From: Patrick Donnelly Date: Fri, 1 Mar 2024 21:51:36 -0500 Subject: [PATCH] qa: refactor CephFSMount.kill_background to optionally kill all background jobs Signed-off-by: Patrick Donnelly (cherry picked from commit bb71023ced2d97a2590b98c4b820e7af6f1801b3) --- qa/tasks/cephfs/mount.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/qa/tasks/cephfs/mount.py b/qa/tasks/cephfs/mount.py index 32f81551f99c..ba4874cc92da 100644 --- a/qa/tasks/cephfs/mount.py +++ b/qa/tasks/cephfs/mount.py @@ -1380,11 +1380,8 @@ class CephFSMount(object): self.run_python(pyscript) def teardown(self): - for p in self.background_procs: - log.info("Terminating background process") - self._kill_background(p) - - self.background_procs = [] + log.info("Terminating background process") + self.kill_background() def _kill_background(self, p): if p.stdin: @@ -1394,13 +1391,16 @@ class CephFSMount(object): except (CommandFailedError, ConnectionLostError): pass - def kill_background(self, p): + def kill_background(self, p=None): """ For a process that was returned by one of the _background member functions, kill it hard. """ - self._kill_background(p) - self.background_procs.remove(p) + procs = [p] if p is not None else self.background_procs + for p in procs: + log.debug(f"terminating {p}") + self._kill_background(p) + self.background_procs.remove(p) def send_signal(self, signal): signal = signal.lower() -- 2.47.3