bitbake: toasterui: fix build - project identification
This patches fixes the build - project identification when running under managed mode. The build is assigned to the project from which it was triggered, and to the build request, as to simplify relationships queries in the database. (Bitbake rev: af1d3373706d365f9138caec110fcb20a5966b7b) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
e7fa0c325d
commit
1dcdd877c7
|
@ -46,7 +46,7 @@ class ORMWrapper(object):
|
|||
pass
|
||||
|
||||
|
||||
def create_build_object(self, build_info):
|
||||
def create_build_object(self, build_info, brbe):
|
||||
assert 'machine' in build_info
|
||||
assert 'distro' in build_info
|
||||
assert 'distro_version' in build_info
|
||||
|
@ -65,6 +65,13 @@ class ORMWrapper(object):
|
|||
build_name=build_info['build_name'],
|
||||
bitbake_version=build_info['bitbake_version'])
|
||||
|
||||
if brbe is not None:
|
||||
from bldcontrol.models import BuildEnvironment, BuildRequest
|
||||
br, be = brbe.split(":")
|
||||
buildrequest = BuildRequest.objects.get(pk = br)
|
||||
build.project = buildrequest.project
|
||||
build.save()
|
||||
|
||||
return build
|
||||
|
||||
def create_target_objects(self, target_info):
|
||||
|
@ -600,7 +607,10 @@ class BuildInfoHelper(object):
|
|||
assert '_pkgs' in vars(event)
|
||||
build_information = self._get_build_information()
|
||||
|
||||
build_obj = self.orm_wrapper.create_build_object(build_information)
|
||||
brbe = self.server.runCommand(["getVariable", "TOASTER_BRBE"])[0]
|
||||
|
||||
build_obj = self.orm_wrapper.create_build_object(build_information, brbe)
|
||||
|
||||
self.internal_state['build'] = build_obj
|
||||
|
||||
# save layer version information for this build
|
||||
|
@ -619,6 +629,9 @@ class BuildInfoHelper(object):
|
|||
# Save build configuration
|
||||
self.orm_wrapper.save_build_variables(build_obj, self.server.runCommand(["getAllKeysWithFlags", ["doc", "func"]])[0])
|
||||
|
||||
return brbe
|
||||
|
||||
|
||||
def update_target_image_file(self, event):
|
||||
image_fstypes = self.server.runCommand(["getVariable", "IMAGE_FSTYPES"])[0]
|
||||
for t in self.internal_state['targets']:
|
||||
|
|
|
@ -94,7 +94,7 @@ def main(server, eventHandler, params ):
|
|||
first = True
|
||||
|
||||
buildinfohelper = BuildInfoHelper(server, build_history_enabled)
|
||||
|
||||
brbe = None
|
||||
|
||||
while True:
|
||||
try:
|
||||
|
@ -111,7 +111,7 @@ def main(server, eventHandler, params ):
|
|||
helper.eventHandler(event)
|
||||
|
||||
if isinstance(event, bb.event.BuildStarted):
|
||||
buildinfohelper.store_started_build(event)
|
||||
brbe = buildinfohelper.store_started_build(event)
|
||||
|
||||
if isinstance(event, (bb.build.TaskStarted, bb.build.TaskSucceeded, bb.build.TaskFailedSilent)):
|
||||
buildinfohelper.update_and_store_task(event)
|
||||
|
@ -231,10 +231,9 @@ def main(server, eventHandler, params ):
|
|||
buildinfohelper.update_build_information(event, errors, warnings, taskfailures)
|
||||
|
||||
|
||||
brbe = server.runCommand(["getVariable", "TOASTER_BRBE"])[0]
|
||||
br_id, be_id = brbe.split(":")
|
||||
# we start a new build info
|
||||
if brbe is not None:
|
||||
br_id, be_id = brbe.split(":")
|
||||
buildinfohelper.store_build_done(br_id, be_id)
|
||||
|
||||
print "we are under BuildEnvironment management - after the build, we exit"
|
||||
|
|
Loading…
Reference in New Issue