Patchwork [bitbake-devel] bitbake-worker: ensure BUILDNAME is available during execution

login
register
mail settings
Submitter Paul Eggleton
Date Sept. 2, 2013, 5:26 p.m.
Message ID <1378142788-17001-1-git-send-email-paul.eggleton@linux.intel.com>
Download mbox | patch
Permalink /patch/57241/
State Accepted
Commit 92940b0427d9b2b3f95e27c230ec1e36638a34bc
Headers show

Comments

Paul Eggleton - Sept. 2, 2013, 5:26 p.m.
BUILDNAME is set from cooker by default, so since the worker split it
will not be set when executing functions. In OpenEmbedded this results
in /etc/version (which is populated from BUILDNAME) not having any
content. Pass this variable value through to the worker explicitly to
fix the issue.

Fixes [YOCTO #4818].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
 bin/bitbake-worker | 1 +
 lib/bb/runqueue.py | 1 +
 2 files changed, 2 insertions(+)

Patch

diff --git a/bin/bitbake-worker b/bin/bitbake-worker
index b438d98..2f21e7c 100755
--- a/bin/bitbake-worker
+++ b/bin/bitbake-worker
@@ -147,6 +147,7 @@  def fork_off_task(cfg, data, workerdata, fn, task, taskname, appends, quieterror
                 os.umask(umask)
 
             data.setVar("BB_WORKERCONTEXT", "1")
+            data.setVar("BUILDNAME", workerdata["buildname"])
             bb.parse.siggen.set_taskdata(workerdata["hashes"], workerdata["hash_deps"], workerdata["sigchecksums"])
             ret = 0
             try:
diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py
index 0700a5b..8d36f28 100644
--- a/lib/bb/runqueue.py
+++ b/lib/bb/runqueue.py
@@ -852,6 +852,7 @@  class RunQueue:
             "logdefaultverboselogs" : bb.msg.loggerVerboseLogs,
             "logdefaultdomain" : bb.msg.loggerDefaultDomains,
             "prhost" : self.cooker.prhost,
+            "buildname" : self.cfgData.getVar("BUILDNAME", True),
         }
 
         worker.stdin.write("<cookerconfig>" + pickle.dumps(self.cooker.configuration) + "</cookerconfig>")