From cd3c4292e7ccc8934f229fcf010f8615398b87b5 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Wed, 8 Jun 2011 09:34:12 +0100 Subject: bitbake: Cleanup bitbake server init process to be clearer to follow Create a standard format server class instance with method calls for each step in the server setup. There should be enough hooks for each of the different server types. Signed-off-by: Richard Purdie --- bitbake/bin/bitbake | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) (limited to 'bitbake/bin/bitbake') diff --git a/bitbake/bin/bitbake b/bitbake/bin/bitbake index acd086753f..8f2fece2ca 100755 --- a/bitbake/bin/bitbake +++ b/bitbake/bin/bitbake @@ -40,7 +40,7 @@ from bb import cooker from bb import ui from bb import server from bb.server import none -#from bb.server import xmlrpc +from bb.server import xmlrpc __version__ = "1.13.0" logger = logging.getLogger("BitBake") @@ -173,9 +173,6 @@ Default BBFILES are the .bb files in the current directory.""") ui_main = get_ui(configuration) - #server = bb.server.xmlrpc - server = bb.server.none - # Save a logfile for cooker into the current working directory. When the # server is daemonized this logfile will be truncated. cooker_logfile = os.path.join(os.getcwd(), "cooker.log") @@ -192,21 +189,29 @@ Default BBFILES are the .bb files in the current directory.""") # of the UIs (e.g. for DISPLAY, etc.) bb.utils.clean_environment() - cooker = bb.cooker.BBCooker(configuration, server) + #server = bb.server.xmlrpc.BitBakeServer() + server = bb.server.none.BitBakeServer() + + server.initServer() + idle = server.getServerIdleCB() + + cooker = bb.cooker.BBCooker(configuration, idle) cooker.parseCommandLine() - serverinfo = server.BitbakeServerInfo(cooker.server) + server.addcooker(cooker) + server.saveConnectionDetails() + server.detach(cooker_logfile) - server.BitBakeServerFork(cooker, cooker.server, serverinfo, cooker_logfile) + # Should no longer need to ever reference cooker del cooker logger.removeHandler(handler) # Setup a connection to the server (cooker) - server_connection = server.BitBakeServerConnection(serverinfo) + server_connection = server.establishConnection() try: - return server.BitbakeUILauch().launch(serverinfo, ui_main, server_connection.connection, server_connection.events) + return server.launchUI(ui_main, server_connection.connection, server_connection.events) finally: server_connection.terminate() -- cgit v1.2.3-54-g00ecf