]> code.ossystems Code Review - openembedded-core.git/commitdiff
oeqa/selftest/case: Use bb.utils.remove() instead of shutil.remove()
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 27 Nov 2018 12:03:50 +0000 (12:03 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 27 Nov 2018 22:11:22 +0000 (22:11 +0000)
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 <richard.purdie@linuxfoundation.org>
meta/lib/oeqa/selftest/case.py

index 7a90a6b9758d4283f8c5f31a23a33bc028ad493a..9c08d595efd12d94da628931eb5a5dfdf4f04853 100644 (file)
@@ -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 = []