[bitbake-devel] [PATCH 02/10] cooker: Handle datastore tracking for showEnvironment server side only
Richard Purdie
richard.purdie at linuxfoundation.org
Thu Aug 31 16:38:32 UTC 2017
The current passing of "tracking" backwards and forwards, client to server
is ugly and complex and error prone. Instead, set this during showEnvironment
commands triggering a reset there if/as required.
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
lib/bb/cooker.py | 11 ++++++++++-
lib/bb/cookerdata.py | 7 +------
2 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index 2ee349e..ad08c47 100644
--- a/lib/bb/cooker.py
+++ b/lib/bb/cooker.py
@@ -415,7 +415,7 @@ class BBCooker:
self.ui_cmdline = cmdline
clean = True
for o in options:
- if o in ['prefile', 'postfile', 'tracking']:
+ if o in ['prefile', 'postfile']:
server_val = getattr(self.configuration, "%s_server" % o, None)
if not options[o] and server_val:
# restore value provided on server start
@@ -486,6 +486,12 @@ class BBCooker:
if not pkgs_to_build:
pkgs_to_build = []
+ orig_tracking = self.configuration.tracking
+ if not orig_tracking:
+ self.enableDataTracking()
+ self.reset()
+
+
if buildfile:
# Parse the configuration here. We need to do it explicitly here since
# this showEnvironment() code path doesn't use the cache
@@ -530,6 +536,9 @@ class BBCooker:
if envdata.getVarFlag(e, 'func', False) and envdata.getVarFlag(e, 'python', False):
logger.plain("\npython %s () {\n%s}\n", e, envdata.getVar(e, False))
+ if not orig_tracking:
+ self.disableDataTracking()
+ self.reset()
def buildTaskData(self, pkgs_to_build, task, abort, allowincomplete=False):
"""
diff --git a/lib/bb/cookerdata.py b/lib/bb/cookerdata.py
index 55c6ea8..197db62 100644
--- a/lib/bb/cookerdata.py
+++ b/lib/bb/cookerdata.py
@@ -41,10 +41,6 @@ class ConfigParameters(object):
self.options.pkgs_to_build = targets or []
- self.options.tracking = False
- if hasattr(self.options, "show_environment") and self.options.show_environment:
- self.options.tracking = True
-
for key, val in self.options.__dict__.items():
setattr(self, key, val)
@@ -76,7 +72,7 @@ class ConfigParameters(object):
for o in ["abort", "tryaltconfigs", "force", "invalidate_stamp",
"verbose", "debug", "dry_run", "dump_signatures",
"debug_domains", "extra_assume_provided", "profile",
- "prefile", "postfile", "tracking", "server_timeout"]:
+ "prefile", "postfile", "server_timeout"]:
options[o] = getattr(self.options, o)
ret, error = server.runCommand(["updateConfig", options, environment, sys.argv])
@@ -158,7 +154,6 @@ class CookerConfiguration(object):
if key in parameters.options.__dict__:
setattr(self, key, parameters.options.__dict__[key])
self.env = parameters.environment.copy()
- self.tracking = parameters.tracking
def setServerRegIdleCallback(self, srcb):
self.server_register_idlecallback = srcb
--
2.7.4
More information about the bitbake-devel
mailing list