summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/selftest/cases/reproducible.py
Commit message (Collapse)AuthorAgeFilesLines
* oeqa/reproducible: Improve test output and ensure deb+ipk comparedRichard Purdie2020-02-111-2/+7
| | | | | | | | | | | | | | | | | | | Adding newline characters between the packages in the failure output massively improves readability. Also ensure to output ipk failures when there are deb failures by calling self.fail() at the end, else sometimes only partial differences are returned. (From OE-Core rev: 6e2e0480852177db75a6108d77c99c92c4e9950f) (From OE-Core rev: 4d470f48f7fb5e05fba1ca3a59fb4f85d910026e) (From OE-Core rev: 38359c79dc6e02a21d1bc26756c8bd88da762ef8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: reproducible: Add option to capture bad packagesJoshua Watt2019-11-251-0/+20
| | | | | | | | | | | | | Adds an option that can be used to copy the offending packages to a temp directory for later evaluation. This is useful on the Autobuilder to investigate failures. (From OE-Core rev: 91d657a0c4cbb273e1e74d38bfd6b4b05d9b372e) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/reproducible: test ipkgs tooRoss Burton2019-09-271-1/+1
| | | | | | | | | | | | Now that opkg-build can build reproducible ipkgs, we can also add those to the test case. [ YOCTO #13513 ] (From OE-Core rev: 3806d38e6194a42534381993fcfcc3ff39550a13) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest: Use extraresults on self instead of self.tcNathan Rossi2019-09-071-8/+5
| | | | | | | | | | | | | In order to take advantage of multiprocess execution of tests the extraresults must be passed through the TestResult. With changes to how oeqa/core handles test cases the extraresults attribute of the testcase is passed to the TestResult, with passing across process boundaries handled automatically. (From OE-Core rev: 6a1b0c2003a0b4a1983f9494440e6ea02dc25585) Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: reproducible: Preserve sstate mirror for first buildJoshua Watt2019-09-061-1/+1
| | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: 6b8e0077339a89cb01aa40c1b367a4e41a638892) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: reproducible: Do two clean buildsJoshua Watt2019-08-301-20/+28
| | | | | | | | | | | | | Perform two clean builds without sstate instead of one partial rebuild with sstate and one clean build without. There are some classes of reproducibility issues that this solves, and while we would like to resolve them in the long term the direction to do so is not currently clear. (From OE-Core rev: e97c529bfa4e1d0038ea44f15ee3298003daf981) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: Enable reproducible build testJoshua Watt2019-08-301-1/+0
| | | | | | | | | [YOCTO #13323] (From OE-Core rev: 3fc08155b72f711c48f9a667539305eea869b5e9) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: reproducible: Record packages in test resultsJoshua Watt2019-08-301-0/+10
| | | | | | | | | | | | | Records the results of the reproducibility analysis in the JSON test results file. This makes it easier to do post-test analysis on the packages. [YOCTO #13324] (From OE-Core rev: 6c357c8eee322163da96df676a54ff70a0bdc911) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: reproducible: Use subTest for packagesJoshua Watt2019-08-301-10/+11
| | | | | | | | | | | Runs each package class reproducibility test in a separate sub-test. This allows the other sub tests to still run in the event that one fails. (From OE-Core rev: f0095e6c1b915e1e6ded111f4bf77fff0362e29a) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: reproducible: Cleanup reproducible buildJoshua Watt2019-08-301-3/+10
| | | | | | | | | | | | 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. (From OE-Core rev: f67bb34c8e7950779920b696f8502dbaed9eded5) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: Add reproducible build selftestJoshua Watt2019-06-101-0/+160
Adds an initial test for reproducible builds to the OE selftest. This initial test builds core-image-minimal using sstate, then does a clean build without sstate in another build directory, and finally does a binary comparison of the resulting package files between the two builds. The test is currently always skipped since it doesn't pass yet, but it can easily be enabled locally (From OE-Core rev: 2e591bdf93ec9e59b900562263dfe8e72b163baa) Signed-off-by: Joshua Watt <JPEWHacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>