[OE-core] [PATCH] oeqa/bbtests: Fix race over DL_DIR and SSTATE_DIR
Richard Purdie
richard.purdie at linuxfoundation.org
Tue Jul 7 12:22:15 UTC 2015
Running "-c cleanall" on shared DL_DIR and SSTATE_DIR is antisocial.
It leads to hard to debug races where we wonder why files disappear
and reappear from those directories.
Fix this by using a specific set of directories for these tests. This
avoids a long standing bug on the autobuilder where aspell and man
sources would disappear.
[YOCTO #6276]
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
diff --git a/meta/lib/oeqa/selftest/bbtests.py b/meta/lib/oeqa/selftest/bbtests.py
index 9bd34ee..ffe0ea5 100644
--- a/meta/lib/oeqa/selftest/bbtests.py
+++ b/meta/lib/oeqa/selftest/bbtests.py
@@ -98,6 +98,8 @@ class BitbakeTests(oeSelfTest):
def test_invalid_recipe_src_uri(self):
data = 'SRC_URI = "file://invalid"'
self.write_recipeinc('man', data)
+ self.write_config("DL_DIR = \"${TOPDIR}/download-selftest\"")
+ self.write_config("SSTATE_DIR = \"${TOPDIR}/download-selftest\"")
bitbake('-ccleanall man')
result = bitbake('-c fetch man', ignore_status=True)
bitbake('-ccleanall man')
@@ -108,6 +110,8 @@ class BitbakeTests(oeSelfTest):
@testcase(171)
def test_rename_downloaded_file(self):
+ self.write_config("DL_DIR = \"${TOPDIR}/download-selftest\"")
+ self.write_config("SSTATE_DIR = \"${TOPDIR}/download-selftest\"")
data = 'SRC_URI_append = ";downloadfilename=test-aspell.tar.gz"'
self.write_recipeinc('aspell', data)
bitbake('-ccleanall aspell')
@@ -170,6 +174,8 @@ class BitbakeTests(oeSelfTest):
@testcase(1035)
def test_continue(self):
+ self.write_config("DL_DIR = \"${TOPDIR}/download-selftest\"")
+ self.write_config("SSTATE_DIR = \"${TOPDIR}/download-selftest\"")
self.write_recipeinc('man',"\ndo_fail_task () {\nexit 1 \n}\n\naddtask do_fail_task before do_fetch\n" )
runCmd('bitbake -c cleanall man xcursor-transparent-theme')
result = runCmd('bitbake man xcursor-transparent-theme -k', ignore_status=True)
More information about the Openembedded-core
mailing list