aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes/archiver.bbclass
diff options
context:
space:
mode:
authorMariano Lopez <mariano.lopez@linux.intel.com>2016-03-22 14:04:00 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-03-25 10:29:17 +0000
commit8b7ee6ebebf765e5b4afea4d9846926a75e95f01 (patch)
tree755dd4cd5759444c05a9f534f0369c10a7d12cd7 /meta/classes/archiver.bbclass
parentbc100b33ef0752af7f4c0fdf8fdeeb8417a5320c (diff)
downloadopenembedded-core-contrib-8b7ee6ebebf765e5b4afea4d9846926a75e95f01.tar.gz
archiver.bbclass: Don't expand python functions in dumpdata
Currently the dumpdata task expands python data in the datastore, in some functions this causes a silent error and the task will fail. The change also rewrite the function to make a bit clearer. (From OE-Core rev: e3239ade430ff48e00dce47066abe8fcb990af61) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/archiver.bbclass')
-rw-r--r--meta/classes/archiver.bbclass15
1 files changed, 7 insertions, 8 deletions
diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass
index b95176bb9a..221c7f4797 100644
--- a/meta/classes/archiver.bbclass
+++ b/meta/classes/archiver.bbclass
@@ -335,14 +335,13 @@ python do_dumpdata () {
dumpfile = os.path.join(d.getVar('ARCHIVER_OUTDIR', True), \
'%s-showdata.dump' % d.getVar('PF', True))
bb.note('Dumping metadata into %s' % dumpfile)
- f = open(dumpfile, 'w')
- # emit variables and shell functions
- bb.data.emit_env(f, d, True)
- # emit the metadata which isn't valid shell
- for e in d.keys():
- if bb.data.getVarFlag(e, 'python', d):
- f.write("\npython %s () {\n%s}\n" % (e, bb.data.getVar(e, d, True)))
- f.close()
+ with open(dumpfile, "w") as f:
+ # emit variables and shell functions
+ bb.data.emit_env(f, d, True)
+ # emit the metadata which isn't valid shell
+ for e in d.keys():
+ if d.getVarFlag(e, "python", False):
+ f.write("\npython %s () {\n%s}\n" % (e, d.getVar(e, False)))
}
SSTATETASKS += "do_deploy_archives"