From 4cba010529b558bfbcf546942197277f8ce1b63e Mon Sep 17 00:00:00 2001 From: Ed Bartosh Date: Tue, 19 Jul 2016 22:54:38 +0300 Subject: 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 Signed-off-by: Richard Purdie --- bitbake/lib/bb/main.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'bitbake/lib/bb/main.py') diff --git a/bitbake/lib/bb/main.py b/bitbake/lib/bb/main.py index 1c32e9308d..849cade8ca 100755 --- a/bitbake/lib/bb/main.py +++ b/bitbake/lib/bb/main.py @@ -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 -- cgit v1.2.3-54-g00ecf