diff --git a/virttest/env_process.py b/virttest/env_process.py index 698e65a3998..0106438101a 100644 --- a/virttest/env_process.py +++ b/virttest/env_process.py @@ -45,6 +45,7 @@ from virttest import migration from virttest import utils_kernel_module from virttest import arch +from virttest import utils_logfile from virttest.utils_conn import SSHConnection from virttest.utils_version import VersionInterval from virttest.staging import service @@ -630,6 +631,8 @@ def postprocess_vm(test, params, env, name): except Exception: pass + utils_logfile.close_all_log_files() + if params.get("vm_extra_dump_paths") is not None: vm_extra_dumps = os.path.join(test.outputdir, "vm_extra_dumps") if not os.path.exists(vm_extra_dumps): diff --git a/virttest/utils_logfile.py b/virttest/utils_logfile.py index e5c08d8311d..c1650af9d99 100644 --- a/virttest/utils_logfile.py +++ b/virttest/utils_logfile.py @@ -142,9 +142,9 @@ def get_log_filename(filename): os.path.abspath(utils_path.get_path(_log_file_dir, filename))) -def close_log_file(filename): +def close_log_files(filename=""): """ - Close all files that use the same base name as filename. + Close log files with the same base name as filename or all if no filename given. :param filename: Log file name :raise: LogLockError if the lock is unavailable @@ -156,7 +156,7 @@ def close_log_file(filename): " _open_log_files") try: for log_file, log_fd in _open_log_files.items(): - if os.path.basename(log_file) == os.path.basename(filename): + if not filename or os.path.basename(log_file) == os.path.basename(filename): log_fd.close() remove.append(log_file) if remove: @@ -167,6 +167,15 @@ def close_log_file(filename): _log_lock.release() +def close_log_file(filename): + """ + Close all files that use the same base name as filename. + + :param filename: Log file name + """ + close_log_files(filename) + + def close_own_log_file(log_file): """Closing hook for sessions with log_file managed locally.""" @@ -174,3 +183,8 @@ def hook(self): close_log_file(log_file) return hook + + +def close_all_log_files(): + """Close all log files.""" + close_log_files()