plugin loading failure just crash without any useful information
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
tempest |
Confirmed
|
Medium
|
Unassigned |
Bug Description
Hi, when a tempest plugin fails to load the backtrace doesn't help at all to known which plugins fail.
$ testr list-tests
running=
OS_STDERR_
OS_TEST_
OS_TEST_
${PYTHON:-python} -m subunit.run discover -t ${OS_TOP_LEVEL:-./} ${OS_TEST_
No handlers could be found for logger "tempest.
--- import errors ---
Failed to call load_tests:
Traceback (most recent call last):
File "/usr/lib/
return load_tests(self, tests, pattern)
File "tempest/
ext_plugins = plugins.
File "tempest/
instances[cls] = cls()
File "tempest/
on_
File "/usr/lib/
verify_
File "/usr/lib/
self.
File "tempest/
raise err
ImportError: No module named tests.tempest.
Non-zero exit code (2) from test listing.
Cheers,
description: | updated |
So this has come up before and I think we need to improve what we output when we raise here. I'm just not sure exactly how and what is needed here. I agree this isn't super helpful for debugging and requires too much reading into the details to figure it out.
Like, in this case it is saying the plugin is misconfigured and trying to import tests.tempest. plugin (from where ever the plugin is running) Like if it is the cinder plugin its trying to import tests/tempest/ plugin. py from the cinder root which doesn't exist. I'm not sure what we need to also output on the error to make this more clear