mirror of
https://git.yoctoproject.org/poky
synced 2026-04-26 00:32:12 +02:00
bitbake may still be shutting down when the UI exits. Wait for the lock
to disappear before trying to delete the directory to avoid errors.
Traceback (most recent call last):
File "/home/pokybuild/yocto-worker/buildtools/build/meta/lib/oeqa/sdk/buildtools-cases/build.py", line 23, in test_libc
self._run('. %s/oe-init-build-env %s && bitbake virtual/libc' % (corebase, testdir))
File "/usr/lib64/python3.7/tempfile.py", line 807, in __exit__
self.cleanup()
File "/usr/lib64/python3.7/tempfile.py", line 811, in cleanup
_shutil.rmtree(self.name)
File "/usr/lib64/python3.7/shutil.py", line 494, in rmtree
_rmtree_safe_fd(fd, path, onerror)
File "/usr/lib64/python3.7/shutil.py", line 452, in _rmtree_safe_fd
onerror(os.unlink, fullname, sys.exc_info())
File "/usr/lib64/python3.7/shutil.py", line 450, in _rmtree_safe_fd
os.unlink(entry.name, dir_fd=topfd)
FileNotFoundError: [Errno 2] No such file or directory: 'bitbake.sock'
(From OE-Core rev: 94df60cc97058444188ec8372c2d9849e74b76c6)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
31 lines
1.0 KiB
Python
31 lines
1.0 KiB
Python
#
|
|
# SPDX-License-Identifier: MIT
|
|
#
|
|
|
|
import os, tempfile
|
|
import time
|
|
from oeqa.sdk.case import OESDKTestCase
|
|
from oeqa.utils.subprocesstweak import errors_have_output
|
|
errors_have_output()
|
|
|
|
class BuildTests(OESDKTestCase):
|
|
"""
|
|
Verify that bitbake can build virtual/libc inside the buildtools.
|
|
"""
|
|
def test_libc(self):
|
|
with tempfile.TemporaryDirectory(prefix='bitbake-build-', dir=self.tc.sdk_dir) as testdir:
|
|
corebase = self.td['COREBASE']
|
|
|
|
self._run('. %s/oe-init-build-env %s' % (corebase, testdir))
|
|
with open(os.path.join(testdir, 'conf', 'local.conf'), 'ta') as conf:
|
|
conf.write('\n')
|
|
conf.write('DL_DIR = "%s"\n' % self.td['DL_DIR'])
|
|
|
|
try:
|
|
self._run('. %s/oe-init-build-env %s && bitbake virtual/libc' % (corebase, testdir))
|
|
finally:
|
|
delay = 10
|
|
while delay and os.path.exists(testdir + "/bitbake.lock"):
|
|
time.sleep(1)
|
|
delay = delay - 1
|