summaryrefslogtreecommitdiffstats
path: root/lib/bb/server
AgeCommit message (Collapse)Author
2011-06-08bitbake/server: Add the none server back for nowRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-08bitbake/server: Move server specific code into the server backend and create ↵Richard Purdie
a server API Move the server implementation specific code into the server backend where it belongs and replace this with a set of object method calls which establish the server, detach it and then connect to it using appropriate IPC. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-08bitbake/server/process: Move implementation knowledge of event queue into ↵Richard Purdie
the server Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-08cooker/process.py: Move profiling code to a place it can be reused by ↵Richard Purdie
different server mechanisms The cooker profiling code isn't server specific so move it to a place where different server backends can use it. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-05-27server: add updated/fixed xmlrpc server from PokyJoshua Lock
Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-03-03server: use local fixed _bootstrap when appropriateChris Larson
When running on python versions 2.6.0 through 2.6.2, we use a local copy of the python 2.6.6 _bootstrap method of Process, to ensure that we have the fix for http://bugs.python.org/issue5313. This avoids the "hang" of the bitbake process at 0% progress during the parsing on older distros like Fedora 12. Signed-off-by: Chris Larson <chris_larson@mentor.com>
2011-02-15server: clean up call of write_profile_statsChris Larson
Signed-off-by: Chris Larson <chris_larson@mentor.com>
2011-02-15server: add profiling support to ProcessServerChris Larson
Based on poky's support, particularly the format of the processed log file and the log message shown to the user regarding the files written. Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-12-18Revert "server: kill stdin/stdout/stderr"Chris Larson
This is a useful thing, but requires that tasks behave correctly, sending their output via the usual bitbake messaging mechanisms, rather than via stdout. We'll postpone this until after the release. Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-12-18server: fix NULL file modeChris Larson
Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-12-17server: drop none and xmlrpcChris Larson
These are no longer used, and are no longer compatible with the current UIs. Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-12-17Timeout UI runCommand calls if server doesn't respond (or dies)Bob Foerster
Signed-off-by: Bob Foerster <robert@erafx.com>
2010-12-17Ensure LogHandler is set up for the server constructionChris Larson
If we add the LogHandler object in the server.main, rather than earlier, any log messages emitted during the construction of the server (and, therefore, during the construction of the cooker) will not be seen. This includes the error(s) which the cooker can emit when parsing the command line. With this, we again see the error if you try to use -g without specifying a recipe to operate against. Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-12-16Forcibly shut down the server if the UI is terminatedChris Larson
Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-12-16server: ensure the cooker is stopped when shutting downChris Larson
Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-12-16server: kill stdin/stdout/stderrChris Larson
This ensures that nothing run from the server can touch the console, in particular event handlers and python tasks, both of which can use bb.msg or the bitbake loggers to send output to the UI in a correct fashion instead. Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-12-16server: fix interrupt handling for processBob Foerster
SIGINT is now blocked within the server context, thus allowing the UI to fully handle all user interaction. There is no longer a need to check for KeyboardInterrupt Exceptions anywhere within the server context. Signed-off-by: Bob Foerster <robert@erafx.com> Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-12-16Run the server and UI in separate processesBob Foerster
This uses the python multiprocessing module, both to spawn the server process and for communication between the processes. Signed-off-by: Bob Foerster <robert@erafx.com> Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-12-08bitbake/xmlrpc: Modify xmlrpc server to work with Python 2.7Joshua Lock
Python 2.7's library changes some of xmlrpclib's internal implementation such that interacting with a proxy to BitBakes SimpleXMLRPCServer would cause BitBake to crash. The issue was traced to changes in the xmlrpclib.Transport implementation and Python bug #8194 (http://bugs.python.org/issue8194). This patch introduces a workaround by create a subclass of xmlrpclib.Transport, which overrides the offending methods with the Python 2.6.6 implementation copy and pasted from the Python 2.6.6 xmlrpclib, and using this BBTransport implementation for both xmlrpclib.Server objects we create. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-12-03bitbake/server: Raise a shutdown event if we're seeing exceptionsRichard Purdie
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-09-28Queue up events before the UI is spawnedChris Larson
- Queue up any events fired to the UI before the UI exists - At exit, check if UIs exist, and if not, flush the queue of LogRecords to the console directly. - When establishing a connection from the UI to the server, flush the queue of events to the queue in the server connection, so the UI will receive them when it begins its event loop. Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-04-11Apply some 2to3 transforms that don't cause issues in 2.6Chris Larson
Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-04-09Apply the 2to3 print function transformChris Larson
Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-04-09Formatting cleanupsChris Larson
Signed-off-by: Chris Larson <chris_larson@mentor.com>
2010-01-22bitbake: Don't import xmlrpc server unless neededRichard Purdie
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-19Drop version requirement to 2.5 apart from XMLRPC modeRichard Purdie
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-19event.py: Convert to using pickle for events and isinstance in knotty UI handlerRichard Purdie
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-19server/xmlrpc: Fix idle timeout handling and missing parameterRichard Purdie
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-18server: Improve idle handling timeoutsRichard Purdie
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-18Add none server type to avoid xmlrpc in the default caseRichard Purdie
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-14Solidify server class creationRichard Purdie
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-14Move xmlrpcserver.py into lib/bb/server as xmlrpc.pyRichard Purdie
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>