From 7dce5875eae80425d1528a914c6b1f165fbb524b Mon Sep 17 00:00:00 2001 From: David Reyna Date: Thu, 7 Sep 2017 21:50:47 -0700 Subject: bitbake: toaster: handle early exceptions Stop the pending build and report to the user if there is an internal exception due to a git error, a bitbake server error, or if the server-only mode halts due to for example a user syntax error in a layer or recipe. These exceptions were not caught because they occure before the normal toastergui processing was started. [YOCTO #12056] (Bitbake rev: 2cd664097c29ad07b08c82d07a239ca199abbc9a) Signed-off-by: David Reyna Signed-off-by: Richard Purdie --- bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'bitbake') diff --git a/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py b/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py index 8eacb5e896..791e53eabf 100644 --- a/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py +++ b/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py @@ -79,6 +79,14 @@ class Command(BaseCommand): br.save() bec.be.lock = BuildEnvironment.LOCK_FREE bec.be.save() + # Cancel the pending build and report the exception to the UI + log_object = LogMessage.objects.create( + build = br.build, + level = LogMessage.EXCEPTION, + message = errmsg) + log_object.save() + br.build.outcome = Build.FAILED + br.build.save() def archive(self): for br in BuildRequest.objects.filter(state=BuildRequest.REQ_ARCHIVE): -- cgit v1.2.3-54-g00ecf