mirror of
https://git.yoctoproject.org/poky
synced 2026-04-17 09:32:12 +02:00
oeqa/buildproject: Ensure temp directories are cleaned up
(From OE-Core rev: 15db91abd152aa3d22d24f951ba7663ab59ff7eb) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit d10aff865120a5feecc42c24726bd119364e0188) Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -18,6 +18,7 @@ class BuildProject(metaclass=ABCMeta):
|
||||
def __init__(self, uri, foldername=None, tmpdir=None, dl_dir=None):
|
||||
self.uri = uri
|
||||
self.archive = os.path.basename(uri)
|
||||
self.tempdirobj = None
|
||||
if not tmpdir:
|
||||
self.tempdirobj = tempfile.TemporaryDirectory(prefix='buildproject-')
|
||||
tmpdir = self.tempdirobj.name
|
||||
@@ -57,6 +58,8 @@ class BuildProject(metaclass=ABCMeta):
|
||||
return self._run('cd %s; make install %s' % (self.targetdir, install_args))
|
||||
|
||||
def clean(self):
|
||||
if self.tempdirobj:
|
||||
self.tempdirobj.cleanup()
|
||||
if not self.needclean:
|
||||
return
|
||||
self._run('rm -rf %s' % self.targetdir)
|
||||
|
||||
@@ -19,6 +19,7 @@ class BuildProject(metaclass=ABCMeta):
|
||||
self.d = d
|
||||
self.uri = uri
|
||||
self.archive = os.path.basename(uri)
|
||||
self.tempdirobj = None
|
||||
if not tmpdir:
|
||||
tmpdir = self.d.getVar('WORKDIR')
|
||||
if not tmpdir:
|
||||
@@ -71,9 +72,10 @@ class BuildProject(metaclass=ABCMeta):
|
||||
return self._run('cd %s; make install %s' % (self.targetdir, install_args))
|
||||
|
||||
def clean(self):
|
||||
if self.tempdirobj:
|
||||
self.tempdirobj.cleanup()
|
||||
self._run('rm -rf %s' % self.targetdir)
|
||||
subprocess.check_call('rm -f %s' % self.localarchive, shell=True)
|
||||
pass
|
||||
|
||||
class TargetBuildProject(BuildProject):
|
||||
|
||||
|
||||
Reference in New Issue
Block a user