bitbake: bitbake: implement --foreground command line option

This option makes bitbake xmlrpc server to run in foreground.
It should be useful for debugging purposes.

(Bitbake rev: 9d4254be5853a546a346bf0d19919dcfba12773d)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ed Bartosh 2016-07-19 22:54:38 +03:00 committed by Richard Purdie
parent 380b6e80ce
commit 4cba010529
1 changed files with 11 additions and 1 deletions

View File

@ -247,6 +247,9 @@ class BitBakeConfigParameters(cookerdata.ConfigParameters):
help="Run bitbake without a UI, only starting a server "
"(cooker) process.")
parser.add_option("", "--foreground", action="store_true",
help="Run bitbake server in foreground.")
parser.add_option("-B", "--bind", action="store", dest="bind", default=False,
help="The name/address for the bitbake server to bind to.")
@ -357,7 +360,8 @@ def start_server(servermodule, configParams, configuration, features):
if isinstance(event, logging.LogRecord):
logger.handle(event)
raise
server.detach()
if not configParams.foreground:
server.detach()
cooker.lock.close()
return server
@ -398,6 +402,10 @@ def bitbake_main(configParams, configuration):
("the BBSERVER environment variable" if "BBSERVER" in os.environ \
else "the '--remote-server' option"))
elif configParams.foreground:
raise BBMainException("FATAL: The '--foreground' option can only be used "
"with --server-only.\n")
if configParams.bind and configParams.servertype != "xmlrpc":
raise BBMainException("FATAL: If '-B' or '--bind' is defined, we must "
"set the servertype as 'xmlrpc'.\n")
@ -495,6 +503,8 @@ def bitbake_main(configParams, configuration):
else:
print("Bitbake server address: %s, server port: %s" % (server.serverImpl.host,
server.serverImpl.port))
if configParams.foreground:
server.serverImpl.serve_forever()
return 0
return 1