From: Alexander Kanavin Date: Thu, 28 Mar 2024 17:02:00 +0000 (+0100) Subject: selftest/sstatetests: run CDN check twice, ignoring errors the first time X-Git-Tag: 2024-04-scarthgap~93 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0db3466303f56736d2fa9a105435eaaadb385082;p=thirdparty%2Fopenembedded%2Fopenembedded-core.git selftest/sstatetests: run CDN check twice, ignoring errors the first time The current CDN isn't able to serve all objects on first request, and it was suggested to work around that by trying again: https://bugzilla.yoctoproject.org/show_bug.cgi?id=15335#c16 Once CDN moves to a better location this can probably be reverted. [YOCTO #15335] Signed-off-by: Alexander Kanavin Signed-off-by: Richard Purdie --- diff --git a/meta/lib/oeqa/selftest/cases/sstatetests.py b/meta/lib/oeqa/selftest/cases/sstatetests.py index 031c2266ace..e2f509c3e83 100644 --- a/meta/lib/oeqa/selftest/cases/sstatetests.py +++ b/meta/lib/oeqa/selftest/cases/sstatetests.py @@ -959,7 +959,7 @@ class SStateMirrors(SStateBase): self.assertEqual(len(failed_urls), missing_objects, "Amount of reported missing objects does not match failed URLs: {}\nFailed URLs:\n{}\nFetcher diagnostics:\n{}".format(missing_objects, "\n".join(failed_urls), "\n".join(failed_urls_extrainfo))) self.assertEqual(len(failed_urls), 0, "Missing objects in the cache:\n{}\nFetcher diagnostics:\n{}".format("\n".join(failed_urls), "\n".join(failed_urls_extrainfo))) - def run_test(self, machine, targets, exceptions, check_cdn = True): + def run_test(self, machine, targets, exceptions, check_cdn = True, ignore_errors = False): # sstate is checked for existence of these, but they never get written out to begin with exceptions += ["{}.*image_qa".format(t) for t in targets.split()] exceptions += ["{}.*deploy_source_date_epoch".format(t) for t in targets.split()] @@ -984,14 +984,18 @@ MACHINE = "{}" """.format(machine)) result = bitbake("-DD -n {}".format(targets)) bitbake("-S none {}".format(targets)) + if ignore_errors: + return self.check_bb_output(result.output, exceptions, check_cdn) def test_cdn_mirror_qemux86_64(self): exceptions = [] + self.run_test("qemux86-64", "core-image-minimal core-image-full-cmdline core-image-sato-sdk", exceptions, ignore_errors = True) self.run_test("qemux86-64", "core-image-minimal core-image-full-cmdline core-image-sato-sdk", exceptions) def test_cdn_mirror_qemuarm64(self): exceptions = [] + self.run_test("qemuarm64", "core-image-minimal core-image-full-cmdline core-image-sato-sdk", exceptions, ignore_errors = True) self.run_test("qemuarm64", "core-image-minimal core-image-full-cmdline core-image-sato-sdk", exceptions) def test_local_cache_qemux86_64(self):