[oe-commits] [bitbake] 02/17: cooker: Handle datastore tracking for showEnvironment server side only

git at git.openembedded.org git at git.openembedded.org
Thu Aug 31 16:56:09 UTC 2017


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master-next
in repository bitbake.

commit 9dc7f384db0479569ff93a76a623d5395fecaf47
Author: Richard Purdie <richard.purdie at linuxfoundation.org>
AuthorDate: Thu Aug 31 17:04:49 2017 +0100

    cooker: Handle datastore tracking for showEnvironment server side only
    
    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

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list