summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb
diff options
context:
space:
mode:
authorAlexandru DAMIAN <alexandru.damian@intel.com>2014-06-12 12:57:22 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-06-13 11:55:34 +0100
commite16352220572835ff2185cf992518fb4f3b2de0e (patch)
tree34ed801e6883d1ebd8e00d4431785dd5e7255039 /bitbake/lib/bb
parent87b99274e9c90101ec9d4c49ce0874bcb85f7746 (diff)
downloadpoky-e16352220572835ff2185cf992518fb4f3b2de0e.tar.gz
bitbake: toaster: build control functionality
We add the build control functionality to toaster. * The bldcontrol application gains bbcontroller classes that know how to manage a localhost build environment. * The toaster UI now detects it is running under build environment controller, and update the build controller database and will shut down the bitbake server once the build is complete. * The toaster script can now run in standalone mode, launching the build controller and the web interface instead of just monitoring the build, as in the interactive mode. * A fixture with the default build controller entry for localhost is provided. [YOCTO #5490] [YOCTO #5491] [YOCTO #5492] [YOCTO #5493] [YOCTO #5494] [YOCTO #5537] (Bitbake rev: 10988bd77c8c7cefad3b88744bc5d8a7e3c1f4cf) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r--bitbake/lib/bb/ui/buildinfohelper.py10
-rw-r--r--bitbake/lib/bb/ui/toasterui.py3
2 files changed, 13 insertions, 0 deletions
diff --git a/bitbake/lib/bb/ui/buildinfohelper.py b/bitbake/lib/bb/ui/buildinfohelper.py
index 58df687ca1..77be7c744c 100644
--- a/bitbake/lib/bb/ui/buildinfohelper.py
+++ b/bitbake/lib/bb/ui/buildinfohelper.py
@@ -916,6 +916,16 @@ class BuildInfoHelper(object):
916 self.internal_state['recipes'], 916 self.internal_state['recipes'],
917 ) 917 )
918 918
919 def store_build_done(self, br_id, be_id):
920 from bldcontrol.models import BuildEnvironment, BuildRequest
921 be = BuildEnvironment.objects.get(pk = be_id)
922 be.lock = BuildEnvironment.LOCK_LOCK
923 be.save()
924 br = BuildRequest.objects.get(pk = br_id)
925 br.state = BuildRequest.REQ_COMPLETED
926 br.build = self.internal_state['build']
927 br.save()
928
919 def _store_log_information(self, level, text): 929 def _store_log_information(self, level, text):
920 log_information = {} 930 log_information = {}
921 log_information['build'] = self.internal_state['build'] 931 log_information['build'] = self.internal_state['build']
diff --git a/bitbake/lib/bb/ui/toasterui.py b/bitbake/lib/bb/ui/toasterui.py
index c1696b2a31..b1c80cc822 100644
--- a/bitbake/lib/bb/ui/toasterui.py
+++ b/bitbake/lib/bb/ui/toasterui.py
@@ -228,8 +228,11 @@ def main(server, eventHandler, params ):
228 228
229 229
230 brbe = server.runCommand(["getVariable", "TOASTER_BRBE"])[0] 230 brbe = server.runCommand(["getVariable", "TOASTER_BRBE"])[0]
231 br_id, be_id = brbe.split(":")
231 # we start a new build info 232 # we start a new build info
232 if brbe is not None: 233 if brbe is not None:
234 buildinfohelper.store_build_done(br_id, be_id)
235
233 print "we are under BuildEnvironment management - after the build, we exit" 236 print "we are under BuildEnvironment management - after the build, we exit"
234 server.terminateServer() 237 server.terminateServer()
235 else: 238 else: