From: Richard Purdie Date: Tue, 27 Nov 2018 12:03:50 +0000 (+0000) Subject: oeqa/selftest/case: Use bb.utils.remove() instead of shutil.remove() X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~16033 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=00a8fd5b93a5c19ce0b7498e2bc653ce8ad58aaf;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git oeqa/selftest/case: Use bb.utils.remove() instead of shutil.remove() This avoids problems where shutil.remove will error with: File "/usr/lib/python3.5/shutil.py", line 436, in _rmtree_safe_fd os.unlink(name, dir_fd=topfd) FileNotFoundError: [Errno 2] No such file or directory: 'S.gpg-agent.extra' when there are races over file deletion (gpg agent may be slow to exit). We already worked around speed and race issues in bb.utils. Signed-off-by: Richard Purdie --- diff --git a/meta/lib/oeqa/selftest/case.py b/meta/lib/oeqa/selftest/case.py index 7a90a6b9758..9c08d595efd 100644 --- a/meta/lib/oeqa/selftest/case.py +++ b/meta/lib/oeqa/selftest/case.py @@ -12,6 +12,8 @@ import oeqa.utils.ftools as ftools from oeqa.utils.commands import runCmd, bitbake, get_bb_var from oeqa.core.case import OETestCase +import bb.utils + class OESelftestTestCase(OETestCase): def __init__(self, methodName="runTest"): self._extra_tear_down_commands = [] @@ -167,7 +169,7 @@ to ensure accurate results.") if self._track_for_cleanup: for path in self._track_for_cleanup: if os.path.isdir(path): - shutil.rmtree(path) + bb.utils.remove(path, recurse=True) if os.path.isfile(path): os.remove(path) self._track_for_cleanup = []