
----- Original Message -----
From: "Martin Perina" <mperina@redhat.com> To: engine-devel@ovirt.org Sent: Saturday, May 4, 2013 8:13:44 AM Subject: Re: [Engine-devel] Device custom properties
----- Original Message -----
From: "Martin Perina" <mperina@redhat.com> To: engine-devel@ovirt.org Sent: Friday, May 3, 2013 11:06:05 AM Subject: [Engine-devel] Device custom properties
Hi,
I'm currently trying to implement device custom properties infrastructure in ovirt-engine. During discussion with Yair, we found out, that it's not clear, for what type of devices custom properties should be available? In engine we have the VmDeviceType enum which contains following values:
FLOPPY("floppy", "14"), DISK("disk", "17"), CDROM("cdrom", "15"), INTERFACE("interface", "10"), BRIDGE("bridge", "3"), VIDEO("video", "20"), USB("usb", "23"), CONTROLLER("controller", "23"), REDIR("redir", "23"), SPICEVMC("spicevmc", "23"), QXL("qxl"), CIRRUS("cirrus"), SOUND("sound"), ICH6("ich6"), AC97("ac97"), MEMBALLOON("memballoon"), SMARTCARD("smartcard"), BALLOON("balloon"), OTHER("other", "0"), UNKNOWN("unknown", "-1");
But VmDevice class has two String attributes device and type. So for example a disk is a device which has device set to disk and type set to disk (according to VmDeviceCommonUtils.isDisk method).
So my question is, if I have a custom properties for disk, will they be available for all disk devices (disk, cdrom, floppy, ...) or only for real disk? So should we support custom properties for all VmDeviceType enum value separately?
Thanks for suggestions
Martin
The reason for that difference is that we had types in the backend code only for managed devices . (i.e. devoices that are known and handled by the backend) Any other device as balloon etc. is considered as unmanaged device , that means that VDSM tells us that it exists and therefore tell us its type as well...
I've looked at VDSM code, here are device type even more detailed (please correct me if I'm wrong):
DEVICE TYPE 'disk' 'disk', 'cdrom', 'floppy' 'interface' 'bridge' 'video' 'cirrus', 'std', 'vmware', 'qxl', 'none' 'sound' 'ac97', 'pcspk', 'sb16', 'es1370', 'hda', 'ich6' 'controller' 'ide', 'fdc', 'scsi', 'sata', 'usb', 'ccid', 'virtio-serial' 'balloon' 'memballoon' 'channel' 'unix', 'spicevmc', 'virtio-serial' 'console' 'console' 'smartcard' 'smartcard' 'watchdog' 'watchdog'
So I suggest to refactor engine device type to match VDSM side and engine will support device custom properties to be set for these devices types:
'disk', 'interface', 'video', 'sound', 'controller', 'balloon', 'channel', 'console', 'smartcard', 'watchdog'
Is it ok?
Martin
_______________________________________________ Engine-devel mailing list Engine-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-devel