diff options
Diffstat (limited to 'bitbake/lib/bb/ui/buildinfohelper.py')
-rw-r--r-- | bitbake/lib/bb/ui/buildinfohelper.py | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/bitbake/lib/bb/ui/buildinfohelper.py b/bitbake/lib/bb/ui/buildinfohelper.py index 1f66595887..fcef53b63d 100644 --- a/bitbake/lib/bb/ui/buildinfohelper.py +++ b/bitbake/lib/bb/ui/buildinfohelper.py | |||
@@ -933,14 +933,17 @@ class BuildInfoHelper(object): | |||
933 | self.internal_state['recipes'], | 933 | self.internal_state['recipes'], |
934 | ) | 934 | ) |
935 | 935 | ||
936 | def _store_build_done(self): | 936 | def _store_build_done(self, errorcode): |
937 | br_id, be_id = self.brbe.split(":") | 937 | br_id, be_id = self.brbe.split(":") |
938 | from bldcontrol.models import BuildEnvironment, BuildRequest | 938 | from bldcontrol.models import BuildEnvironment, BuildRequest |
939 | be = BuildEnvironment.objects.get(pk = be_id) | 939 | be = BuildEnvironment.objects.get(pk = be_id) |
940 | be.lock = BuildEnvironment.LOCK_LOCK | 940 | be.lock = BuildEnvironment.LOCK_LOCK |
941 | be.save() | 941 | be.save() |
942 | br = BuildRequest.objects.get(pk = br_id) | 942 | br = BuildRequest.objects.get(pk = br_id) |
943 | br.state = BuildRequest.REQ_COMPLETED | 943 | if errorcode == 0: |
944 | br.state = BuildRequest.REQ_COMPLETED | ||
945 | else: | ||
946 | br.state = BuildRequest.REQ_FAILED | ||
944 | br.save() | 947 | br.save() |
945 | 948 | ||
946 | 949 | ||
@@ -964,7 +967,7 @@ class BuildInfoHelper(object): | |||
964 | self.internal_state['backlog'].append(event) | 967 | self.internal_state['backlog'].append(event) |
965 | else: # we're under Toaster control, post the errors to the build request | 968 | else: # we're under Toaster control, post the errors to the build request |
966 | from bldcontrol.models import BuildRequest, BRError | 969 | from bldcontrol.models import BuildRequest, BRError |
967 | br, be = brbe.split(":") | 970 | br, be = self.brbe.split(":") |
968 | buildrequest = BuildRequest.objects.get(pk = br) | 971 | buildrequest = BuildRequest.objects.get(pk = br) |
969 | brerror = BRError.objects.create(req = buildrequest, errtype="build", errmsg = event.msg) | 972 | brerror = BRError.objects.create(req = buildrequest, errtype="build", errmsg = event.msg) |
970 | 973 | ||
@@ -992,9 +995,9 @@ class BuildInfoHelper(object): | |||
992 | log_information['lineno'] = event.lineno | 995 | log_information['lineno'] = event.lineno |
993 | self.orm_wrapper.create_logmessage(log_information) | 996 | self.orm_wrapper.create_logmessage(log_information) |
994 | 997 | ||
995 | def close(self): | 998 | def close(self, errorcode): |
996 | if self.brbe is not None: | 999 | if self.brbe is not None: |
997 | buildinfohelper._store_build_done() | 1000 | self._store_build_done(errorcode) |
998 | 1001 | ||
999 | if 'backlog' in self.internal_state: | 1002 | if 'backlog' in self.internal_state: |
1000 | for event in self.internal_state['backlog']: | 1003 | for event in self.internal_state['backlog']: |