Hi Cristian,
The patch looks good but I don't want to merge it until we get a way to
inform user about which volume is in use and properly warn he/she when
one of those volumes is selected for use.
So prior to this patch we need to:
1. Change the ref_count to used_by and properly return the list of VMs
names which uses the volume
2. Update the UI to display the used_by value for each volume on drop box
Maybe also sort the volumes to display those free ones first.
Ex. <volume name> [Used by: <VMs>]
3. Warn user the select disk is in use by other VM.
After 1,2 and 3 get merged I am OK to merge this patch too.
On 20/04/2015 12:14, CrÃstian Deives wrote:
As discussed in an e-mail thread
(
http://lists.ovirt.org/pipermail/kimchi-devel/2015-March/010154.html),
we should stop blocking the user from creating VM storages when the
storage has already been added to some VM. The UI may display a warning
when that cases happens so the user should decide what to do.
Remove check on ref_cnt when creating a VM storage.
Signed-off-by: CrÃstian Deives <cristiandeives(a)gmail.com>
---
src/kimchi/i18n.py | 1 -
src/kimchi/model/vmstorages.py | 2 --
2 files changed, 3 deletions(-)
diff --git a/src/kimchi/i18n.py b/src/kimchi/i18n.py
index 18e84bc..6b4726c 100644
--- a/src/kimchi/i18n.py
+++ b/src/kimchi/i18n.py
@@ -285,7 +285,6 @@ messages = {
"KCHVMSTOR0013E": _("Specify path to update virtual machine
disk"),
"KCHVMSTOR0014E": _("Controller type %(type)s limitation of
%(limit)s devices reached"),
"KCHVMSTOR0015E": _("Cannot retrieve disk path information for given
pool/volume: %(error)s"),
- "KCHVMSTOR0016E": _("Volume already in use by other virtual
machine."),
"KCHVMSTOR0017E": _("Only one of path or pool/volume can be
specified to add a new virtual machine disk"),
"KCHVMSTOR0018E": _("Volume chosen with format %(format)s does not
fit in the storage type %(type)s"),
diff --git a/src/kimchi/model/vmstorages.py b/src/kimchi/model/vmstorages.py
index 37aca64..0375772 100644
--- a/src/kimchi/model/vmstorages.py
+++ b/src/kimchi/model/vmstorages.py
@@ -111,8 +111,6 @@ class VMStoragesModel(object):
raise InvalidParameter("KCHVMSTOR0012E")
except Exception as e:
raise InvalidParameter("KCHVMSTOR0015E", {'error':
e})
- if vol_info['ref_cnt'] != 0:
- raise InvalidParameter("KCHVMSTOR0016E")
valid_format = {
"disk": ["raw", "bochs",
"qcow", "qcow2", "qed", "vmdk"],