diff options
author | Cole Robinson <crobinso@redhat.com> | 2016-06-17 13:06:35 -0400 |
---|---|---|
committer | Cole Robinson <crobinso@redhat.com> | 2016-06-17 13:06:35 -0400 |
commit | 20c2d5b6ff501b8acb43ba9105cb44157f85fb3e (patch) | |
tree | 8d75e88b273406087c3a693b9afd6d0e6ff5e719 | |
parent | 47dd38eb3eb604b72687afec7463c7303caac133 (diff) | |
download | virt-manager-20c2d5b6ff501b8acb43ba9105cb44157f85fb3e.tar.gz |
delete: Don't offer to delete floppy media by default
Even if it's not marked readonly or shareable, floppy media is
very likely to be a shared resource and not something that belongs
to the VM that the user will want to delete by default.
-rw-r--r-- | virtManager/delete.py | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/virtManager/delete.py b/virtManager/delete.py index e3d4c003..8113e140 100644 --- a/virtManager/delete.py +++ b/virtManager/delete.py @@ -234,14 +234,15 @@ def populate_storage_list(storage_list, vm, conn): model = storage_list.get_model() model.clear() - diskdata = [(d.target, d.path, d.read_only, d.shareable) for + diskdata = [(d.target, d.path, d.read_only, d.shareable, + d.device in ["cdrom", "floppy"]) for d in vm.get_disk_devices()] - diskdata.append(("kernel", vm.get_xmlobj().os.kernel, True, False)) - diskdata.append(("initrd", vm.get_xmlobj().os.initrd, True, False)) - diskdata.append(("dtb", vm.get_xmlobj().os.dtb, True, False)) + diskdata.append(("kernel", vm.get_xmlobj().os.kernel, True, False, True)) + diskdata.append(("initrd", vm.get_xmlobj().os.initrd, True, False, True)) + diskdata.append(("dtb", vm.get_xmlobj().os.dtb, True, False, True)) - for target, path, ro, shared in diskdata: + for target, path, ro, shared, is_media in diskdata: if not path: continue @@ -262,7 +263,7 @@ def populate_storage_list(storage_list, vm, conn): if can_del: default, definfo = do_we_default(conn, vm.get_name(), vol, - path, ro, shared) + path, ro, shared, is_media) info = None if not can_del: @@ -358,7 +359,7 @@ def can_delete(conn, vol, path): return (ret, msg) -def do_we_default(conn, vm_name, vol, path, ro, shared): +def do_we_default(conn, vm_name, vol, path, ro, shared, is_media): """ Returns (do we delete by default?, info string if not)""" info = "" @@ -378,6 +379,9 @@ def do_we_default(conn, vm_name, vol, path, ro, shared): if shared: info = append_str(info, _("Storage is marked as shareable.")) + if not info and is_media: + info = append_str(info, _("Storage is a media device.")) + try: names = virtinst.VirtualDisk.path_in_use_by(conn.get_backend(), path) |