]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
oeqa: reproducible: Preserve sstate mirror for first build
authorJoshua Watt <jpewhacker@gmail.com>
Sat, 31 Aug 2019 01:41:24 +0000 (20:41 -0500)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 6 Sep 2019 07:24:44 +0000 (08:24 +0100)
Preserves the SSTATE_MIRROR variable for the first build in the
reproducible test. This patch is intended to test the theory that using
the Yocto autobuilder sstate mirror will still be reproducible. The
autobuilder always does clean builds and never rebuilds recipes that
were built previously, thus building with the mirror but not
sharing tmpdir and sstate with previous builds should be reproducible.

There is no guarantee that all sstate caches are populated from clean
builds so this patch cannot be submitted to master, and I'm not
bothering sending it to the mailing list.

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/lib/oeqa/selftest/cases/reproducible.py

index b3bbb70158b27e123bc649f248b27279e5819067..ffb405af20fc5b3138927101d814e0bb45fdabfe 100644 (file)
@@ -134,7 +134,6 @@ class ReproducibleTests(OESelftestTestCase):
             INHERIT += "reproducible_build"
             PACKAGE_CLASSES = "%s"
             SSTATE_DIR = "${TMPDIR}/sstate"
-            SSTATE_MIRROR = ""
             ''') % (' '.join('package_%s' % c for c in self.package_classes))
 
         # Perform a build.
@@ -154,6 +153,7 @@ class ReproducibleTests(OESelftestTestCase):
             bb.utils.remove(reproducibleB_tmp, recurse=True)
 
         self.write_config((textwrap.dedent('''\
+            SSTATE_MIRROR = ""
             TMPDIR = "%s"
             ''') % reproducibleB_tmp) + common_config)
         vars_B = get_bb_vars(capture_vars)