summaryrefslogtreecommitdiffstats
path: root/test/run_tests.py
diff options
context:
space:
mode:
authorPaul Vinciguerra <pvinci@vinciconsulting.com>2018-11-28 11:34:21 -0800
committerOle Trøan <otroan@employees.org>2019-02-26 09:39:00 +0000
commit38a4ec7342c27e675cc049d923e0075655fd91fd (patch)
treea9d42c77514ad103a8c7249a6cf88dc6bb988221 /test/run_tests.py
parent2bbbea0f88f24bc96198e841a7e8b984bfab87b3 (diff)
make test: Add exception handling around subprocess.
This cleans up exception catching to identify oserrors. By raising the specific exception closer to the offending call, we get additional stack history and can add clearer error logging to assist in troubleshooting. Change-Id: I592e4d46844b822a816485bf54910f8daed92088 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
Diffstat (limited to 'test/run_tests.py')
-rw-r--r--test/run_tests.py16
1 files changed, 13 insertions, 3 deletions
diff --git a/test/run_tests.py b/test/run_tests.py
index 726ccc9c0f4..f5d0d3546a2 100644
--- a/test/run_tests.py
+++ b/test/run_tests.py
@@ -253,13 +253,23 @@ def handle_failed_suite(logger, last_test_temp_dir, vpp_pid):
"Core-file exists in test temporary directory: %s!" %
core_path)
check_core_path(logger, core_path)
- logger.debug("Running `file %s':" % core_path)
+ logger.debug("Running 'file %s':" % core_path)
try:
info = check_output(["file", core_path])
logger.debug(info)
except CalledProcessError as e:
- logger.error("Could not run `file' utility on core-file, "
- "rc=%s" % e.returncode)
+ logger.error("Subprocess returned with return code "
+ "while running `file' utility on core-file "
+ "returned: "
+ "rc=%s", e.returncode)
+ except OSError as e:
+ logger.error("Subprocess returned with OS error while "
+ "running 'file' utility "
+ "on core-file: "
+ "(%s) %s", e.errno, e.strerror)
+ except Exception as e:
+ logger.exception("Unexpected error running `file' utility "
+ "on core-file")
if vpp_pid:
# Copy api post mortem