summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorJason Wessel <jason.wessel@windriver.com>2013-11-25 15:21:25 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-12-02 11:22:54 +0000
commit46b26ef5c27bfa9c91680f494f02750305b8098c (patch)
tree18995fff954016effea4e13bfa7b0acf7012f6bd /bin
parentd39d957c77b9804670cad3bc9f7742084ead27e8 (diff)
downloadbitbake-contrib-46b26ef5c27bfa9c91680f494f02750305b8098c.tar.gz
bitbake: Add --status-only option
The --status-only option is purely to check the health of the server. The idea is to use it from the oe environment script so as to know if the server needs to be started or not. Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bin')
-rwxr-xr-xbin/bitbake15
1 files changed, 14 insertions, 1 deletions
diff --git a/bin/bitbake b/bin/bitbake
index 50971a8d8..cca2b8d29 100755
--- a/bin/bitbake
+++ b/bin/bitbake
@@ -190,6 +190,9 @@ class BitBakeConfigParameters(cookerdata.ConfigParameters):
parser.add_option("", "--observe-only", help = "Connect to a server as an observing-only client.",
action = "store_true", dest = "observe_only", default = False)
+ parser.add_option("", "--status-only", help = "Check the status of the remote bitbake server.",
+ action = "store_true", dest = "status_only", default = False)
+
options, targets = parser.parse_args(sys.argv)
# some environmental variables set also configuration options
@@ -284,7 +287,9 @@ def main():
# Ensure logging messages get sent to the UI as events
handler = bb.event.LogHandler()
- logger.addHandler(handler)
+ if not configParams.status_only:
+ # In status only mode there are no logs and no UI
+ logger.addHandler(handler)
# Clear away any spurious environment variables while we stoke up the cooker
cleanedvars = bb.utils.clean_environment()
@@ -302,6 +307,14 @@ def main():
# Collect the feature set for the UI
featureset = getattr(ui_module, "featureSet", [])
+ if configParams.status_only:
+ try:
+ server_connection = server.establishConnection(featureset)
+ except:
+ sys.exit(1)
+ server_connection.terminate()
+ sys.exit(0)
+
# Setup a connection to the server (cooker)
server_connection = server.establishConnection(featureset)