diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-09-05 10:34:41 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-09-11 17:30:18 +0100 |
commit | cf2d642052979d236185c5b8ca2c5478c06e62ae (patch) | |
tree | 7204e20516d29e268ea64e38d0ab9c35cffc6fbc | |
parent | a9439b136f55f3f0e80ff053cd3b159da69ba362 (diff) | |
download | bitbake-cf2d642052979d236185c5b8ca2c5478c06e62ae.tar.gz |
siggen/runqueue/bitbake-worker: Improve siggen data transfer interface
We need to transfer some of the siggen data from the core/cooker into
the worker instances. There was a partial API created for this but
its ugly and its not possible to extend it from the siggen class.
This patch completes the interface/abstraction for the data and
means the class can extend/customise it in any siggen class.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rwxr-xr-x | bin/bitbake-worker | 2 | ||||
-rw-r--r-- | lib/bb/runqueue.py | 4 | ||||
-rw-r--r-- | lib/bb/siggen.py | 9 |
3 files changed, 7 insertions, 8 deletions
diff --git a/bin/bitbake-worker b/bin/bitbake-worker index c7992f7e8..b2935f6ec 100755 --- a/bin/bitbake-worker +++ b/bin/bitbake-worker @@ -168,7 +168,7 @@ def fork_off_task(cfg, data, workerdata, fn, task, taskname, appends, taskdepdat data.setVar("BUILDNAME", workerdata["buildname"]) data.setVar("DATE", workerdata["date"]) data.setVar("TIME", workerdata["time"]) - bb.parse.siggen.set_taskdata(workerdata["hashes"], workerdata["hash_deps"], workerdata["sigchecksums"]) + bb.parse.siggen.set_taskdata(workerdata["sigdata"]) ret = 0 try: the_data = bb.cache.Cache.loadDataFull(fn, appends, data) diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py index 39df79473..6d9cf3f4d 100644 --- a/lib/bb/runqueue.py +++ b/lib/bb/runqueue.py @@ -879,9 +879,7 @@ class RunQueue: "fakerootenv" : self.rqdata.dataCache.fakerootenv, "fakerootdirs" : self.rqdata.dataCache.fakerootdirs, "fakerootnoenv" : self.rqdata.dataCache.fakerootnoenv, - "hashes" : bb.parse.siggen.taskhash, - "hash_deps" : bb.parse.siggen.runtaskdeps, - "sigchecksums" : bb.parse.siggen.file_checksum_values, + "sigdata" : bb.parse.siggen.get_taskdata(), "runq_hash" : self.rqdata.runq_hash, "logdefaultdebug" : bb.msg.loggerDefaultDebugLevel, "logdefaultverbose" : bb.msg.loggerDefaultVerbose, diff --git a/lib/bb/siggen.py b/lib/bb/siggen.py index 548f50dfc..86d9ca059 100644 --- a/lib/bb/siggen.py +++ b/lib/bb/siggen.py @@ -197,10 +197,11 @@ class SignatureGeneratorBasic(SignatureGenerator): #d.setVar("BB_TASKHASH_task-%s" % task, taskhash[task]) return h - def set_taskdata(self, hashes, deps, checksums): - self.runtaskdeps = deps - self.taskhash = hashes - self.file_checksum_values = checksums + def get_taskdata(self): + return (self.runtaskdeps, self.taskhash, self.file_checksum_values) + + def set_taskdata(self, data): + self.runtaskdeps, self.taskhash, self.file_checksum_values = data def dump_sigtask(self, fn, task, stampbase, runtime): k = fn + "." + task |