[oe-commits] Richard Purdie : oeqa/bbtests: Fix race over DL_DIR and SSTATE_DIR

git at git.openembedded.org git at git.openembedded.org
Wed Jul 8 12:10:03 UTC 2015


Module: openembedded-core.git
Branch: master-next
Commit: 6b089c4a79dc3aae00c8a6e7ab0f6ba4b4b5f138
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=6b089c4a79dc3aae00c8a6e7ab0f6ba4b4b5f138

Author: Richard Purdie <richard.purdie at linuxfoundation.org>
Date:   Tue Jul  7 13:22:15 2015 +0100

oeqa/bbtests: Fix race over DL_DIR and SSTATE_DIR

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>

---

 meta/lib/oeqa/selftest/bbtests.py | 6 ++++++
 1 file changed, 6 insertions(+)

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-commits mailing list