Previously we were leaving temporary directories behind. While the
QEMUMachine does make efforts to clean up after itself the directory
belongs to the calling function. We use TemporaryDirectory to wrap
this although we explicitly clear the reference in tearDown() as it
doesn't get cleaned up otherwise.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <
20201117173635.29101-4-alex.bennee@linaro.org>
self.cancel("No QEMU binary defined or found in the build tree")
def _new_vm(self, *args):
- sd = tempfile.mkdtemp(prefix="avo_qemu_sock_")
- vm = QEMUMachine(self.qemu_bin, sock_dir=sd)
+ self._sd = tempfile.TemporaryDirectory(prefix="avo_qemu_sock_")
+ vm = QEMUMachine(self.qemu_bin, sock_dir=self._sd.name)
if args:
vm.add_args(*args)
return vm
def tearDown(self):
for vm in self._vms.values():
vm.shutdown()
+ self._sd = None
def fetch_asset(self, name,
asset_hash=None, algorithm=None,