bitbake: build.py: add unhandled exception information to the logger when executing python tasks

Previously this information was simply discarded, which in some cases
resulted in generic, unhelpful failures.

With this change the user would see what the exception is, but
without ugly tracebacks or bulky, irrelevant information from the log file.

(Bitbake rev: 8da9242702fbef8cf3156b95a1076802e0f653c7)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Alexander Kanavin
2019-02-11 15:13:01 +01:00
committed by Richard Purdie
parent df91cbf7ac
commit 2f17b87f97

View File

@@ -304,9 +304,10 @@ def exec_func_python(func, d, runfile, cwd=None, pythonexception=False):
utils.better_exec(comp, {"d": d}, code, "exec_python_func() autogenerated", pythonexception=pythonexception)
except (bb.parse.SkipRecipe, bb.build.FuncFailed):
raise
except:
except Exception as e:
if pythonexception:
raise
logger.error(str(e))
raise FuncFailed(func, None)
finally:
bb.debug(2, "Python function %s finished" % func)