Subject: delete: undefine only persistent domain From: Pavel Hrdina phrdina@redhat.com Fri Nov 24 17:26:59 2017 +0100 Date: Fri Nov 24 17:39:58 2017 +0100: Git: b9bc3b605a96920d3e225d472d549864205e92ce Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1517119 Signed-off-by: Pavel Hrdina diff --git a/virtManager/delete.py b/virtManager/delete.py index 98df413..0ebfdeb 100644 --- a/virtManager/delete.py +++ b/virtManager/delete.py @@ -162,6 +162,7 @@ class vmmDeleteDialog(vmmGObjectUI): def _async_delete(self, asyncjob, paths): storage_errors = [] details = "" + undefine = self.vm.is_persistent() try: if self.vm.is_active(): @@ -181,8 +182,9 @@ class vmmDeleteDialog(vmmGObjectUI): "".join(traceback.format_exc()))) meter.end(0) - logging.debug("Removing VM '%s'", self.vm.get_name()) - self.vm.delete() + if undefine: + logging.debug("Removing VM '%s'", self.vm.get_name()) + self.vm.delete() except Exception as e: error = (_("Error deleting virtual machine '%s': %s") % diff --git a/virtManager/domain.py b/virtManager/domain.py index a1f59e3..183a56c 100644 --- a/virtManager/domain.py +++ b/virtManager/domain.py @@ -484,6 +484,9 @@ class vmmDomain(vmmLibvirtObject): return bool(self.get_xmlobj().os.loader_ro is True and self.get_xmlobj().os.loader_type == "pflash") + def is_persistent(self): + return bool(self._backend.isPersistent()) + ################## # Support checks # ##################