summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoshua Watt <jpewhacker@gmail.com>2019-08-27 14:33:45 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-08-30 13:37:42 +0100
commitf67bb34c8e7950779920b696f8502dbaed9eded5 (patch)
treebf83110c37ff7d530b2eeba39d1c22e9f7893c53
parent372a211657bfddd7f32f30043ec06198f8c27101 (diff)
downloadopenembedded-core-contrib-f67bb34c8e7950779920b696f8502dbaed9eded5.tar.gz
oeqa: reproducible: Cleanup reproducible build
Cleans up the output from the reproducible build before building to ensure consistent results. Note that the output put is purposely left after around after the build so that non-reproducible packages can be diffed. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/lib/oeqa/selftest/cases/reproducible.py13
1 files changed, 10 insertions, 3 deletions
diff --git a/meta/lib/oeqa/selftest/cases/reproducible.py b/meta/lib/oeqa/selftest/cases/reproducible.py
index 6dc83d2847..74d94fb20d 100644
--- a/meta/lib/oeqa/selftest/cases/reproducible.py
+++ b/meta/lib/oeqa/selftest/cases/reproducible.py
@@ -132,16 +132,23 @@ class ReproducibleTests(OESelftestTestCase):
bitbake("diffutils-native -c addto_recipe_sysroot")
diffutils_sysroot = get_bb_var("RECIPE_SYSROOT_NATIVE", "diffutils-native")
+ reproducible_tmp = os.path.join(self.topdir, 'reproducible', 'tmp')
+ if os.path.exists(reproducible_tmp):
+ bb.utils.remove(reproducible_tmp)
+
# Perform another build. This build should *not* share sstate or pull
# from any mirrors, but sharing a DL_DIR is fine
- self.write_config(textwrap.dedent('''\
- TMPDIR = "${TOPDIR}/reproducible/tmp"
+ self.write_config((textwrap.dedent('''\
+ TMPDIR = "%s"
SSTATE_DIR = "${TMPDIR}/sstate"
SSTATE_MIRROR = ""
- ''') + common_config)
+ ''') % reproducible_tmp) + common_config)
vars_test = get_bb_vars(capture_vars)
bitbake(' '.join(self.images))
+ # NOTE: The temp directory from the reproducible build is purposely
+ # kept after the build so it can be diffed for debugging.
+
for c in self.package_classes:
package_class = 'package_' + c