[virt-tools-list] [virt-manager PATCH 3/3] installer*.py: Remove temporary dirs
Fabiano Fidêncio
fidencio at redhat.com
Fri Jun 7 10:03:22 UTC 2019
Together with the temporary files removal, let's also remove the
directories created to store those files.
Signed-off-by: Fabiano Fidêncio <fidencio at redhat.com>
---
virtinst/installer.py | 10 ++++++++++
virtinst/installertreemedia.py | 9 +++++++++
2 files changed, 19 insertions(+)
diff --git a/virtinst/installer.py b/virtinst/installer.py
index ca23d526..24653d3c 100644
--- a/virtinst/installer.py
+++ b/virtinst/installer.py
@@ -140,10 +140,20 @@ class Installer(object):
self._install_floppy_device.sync_path_props()
def _cleanup_unattended_files(self):
+ dirs = []
for f in self._unattended_files:
+ dirname = os.path.dirname(f)
+ if dirname not in dirs:
+ dirs.append(dirname)
+
logging.debug("Removing %s", str(f))
os.unlink(f)
+ for d in dirs:
+ if not os.listdir(d):
+ logging.debug("Removing %s", str(d))
+ os.rmdir(d)
+
def _build_boot_order(self, guest, bootdev):
bootorder = [bootdev]
diff --git a/virtinst/installertreemedia.py b/virtinst/installertreemedia.py
index ea522904..d7fef898 100644
--- a/virtinst/installertreemedia.py
+++ b/virtinst/installertreemedia.py
@@ -208,10 +208,19 @@ class InstallerTreeMedia(object):
def cleanup(self, guest):
ignore = guest
+ dirs = []
for f in self._tmpfiles:
+ dirname = os.path.dirname(f)
+ if dirname not in dirs:
+ dirs.append(dirname)
logging.debug("Removing %s", str(f))
os.unlink(f)
+ for d in dirs:
+ if not os.listdir(d):
+ logging.debug("Removing %s", d)
+ os.rmdir(d)
+
for vol in self._tmpvols:
logging.debug("Removing volume '%s'", vol.name())
vol.delete(0)
--
2.21.0
More information about the virt-tools-list
mailing list