diff options
author | Hongxu Jia <hongxu.jia@windriver.com> | 2020-04-16 15:44:27 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2020-04-24 14:31:30 +0100 |
commit | a3074807974536e370289c25fddcb9ad93cbc137 (patch) | |
tree | 0bc2703574c1dd9cd8fbe4b3b3721f2c40813b5c /lib/bb | |
parent | 4618da2094189e4d814b7d65672cb65c86c0626a (diff) | |
download | bitbake-contrib-a3074807974536e370289c25fddcb9ad93cbc137.tar.gz |
tinfoil: fix config_data mess up insane check while parsing multiple recipes
Since commit [tinfoil: Simplify remote datastore connections][1] and
[tinfoil: Add back ability to parse on top of a datastore][2] applied,
bitbake run command parseRecipeFile with param config_data.dsindex rather
than config_data.
While calling tinfoil.parse_recipe_file() with one config_data (with the same
config_data.dsindex) to parse multiple recipes, it will mess up insane check.
It broke update_layer.py on layerindex, here are the simplified steps:
[snip]
t= bb.tinfoil.Tinfoil()
t.prepare()
data = bb.data.createCopy(t.config_data)
fn = "path_to/oe-core/meta/recipes-graphics/images/core-image-clutter.bb"
t.parse_recipe_file(fn, appends=False, config_data=data)
fn = "path_to/oe-core/meta/recipes-graphics/packagegroups/packagegroup-core-x11-base.bb"
t.parse_recipe_file(fn, appends=False, config_data=data)
| File "path_to/oe-core/meta/classes/insane.bbclass", line 1303,
in __anon_1304__path_to_oe_core_meta_classes_insane_bbclass
| bb.fatal("Fatal QA errors found, failing task.")
[snip]
In above failure, RDEPENDS is assigned `${PACKAGE_INSTALL} ${LINGUAS_INSTALL}
${IMAGE_INSTALL_DEBUGFS}' in core-image-clutter.bb, but it broke insane check
on packagegroup-core-x11-base.bb
>From commit [remotedata: enable transporting datastore from the client to
the server][3], it create a new DataSmart to save receive_datastore's remote_data
Similarly, make a copy of config_data(with different config_data.dsindex) could
fix the issue.
[1] http://git.openembedded.org/bitbake/commit/?id=85e03a64dd0a4ebe71009ec4bdf4192c04a9786e
[2] http://git.openembedded.org/bitbake/commit/?id=4618da2094189e4d814b7d65672cb65c86c0626a
[3] http://git.openembedded.org/bitbake/commit/?id=784d2f1a024efe632fc9049ce5b78692d419d938
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb')
-rw-r--r-- | lib/bb/tinfoil.py | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/bb/tinfoil.py b/lib/bb/tinfoil.py index 7d53608b2..8c9b6b8ca 100644 --- a/lib/bb/tinfoil.py +++ b/lib/bb/tinfoil.py @@ -636,6 +636,7 @@ class Tinfoil: if appends and appendlist == []: appends = False if config_data: + config_data = bb.data.createCopy(config_data) dscon = self.run_command('parseRecipeFile', fn, appends, appendlist, config_data.dsindex) else: dscon = self.run_command('parseRecipeFile', fn, appends, appendlist) |