[vdsm] {vdsm] vdsmapi-schema and json-rpc

Piotr Kliczewski piotr.kliczewski at gmail.com
Tue Nov 5 08:42:20 UTC 2013


Recently I compared vdsmapi-schema.json file and the engine code
(IVdsServer interface). I wanted to understand how to build json messages
from parameters which are provided by the engine interface.

I would like to understand which interface definition is more accurate and
update the other to have consistent information.

I am not sure how to map following engine methods to vdsm commands:
getHardwareInfo, getAllVmStats, heartBeat, startSpice,
getStorageConnectionsList, getStorageDomainsList, getVGList, changeDisk
(maybe VM.changeCD?)

I noticed parameter differences between the schema and the engine code:
- for Host.getVMList command there is isFull attribute in the engine code
but it is not in the schema
- for VM.changeCD and VM.changeFloppy commands the schema contains
DriveSpec whereas in the engine code there is imageLocation
- for VM.setTicket command in the engine existingConnAction and params
parameters
are optional whereas in the schema are mendatory
- for Host.delNetwork command parameter options is not there in the engine
whereas in the schema it is optional
- for StorageDomain.format command there is no autoDetach parameter in the
engine code
- for StoragePool.disconnect command there is no remove parametere in the
engine code
- for StoragePool.create command there is no lockPolicy parameter in the
schema
- for StoragePool.reconstructMaster command there are no lockPolicy and
hostSpmId parameters in the schema
- for StoragePool.getIsoList command there is no filenameExtension parameter
in the engine code
- for StoragePool.spmStart command there are no storagePoolFormatType and
domVersion parameters in the schema
- for StoragePool.fence command  there are no prevID and prevLVER parameters
in the schema

There are some type mismatches:
-  for StorageDomainType type is missing some values in the schema
-  for Host.getDeviceList command there are different storage types in the
schema and the engine code

In the schema there is vmID parameter multiple times for following commands:
VM.create, VM.migrate, VM.hotplugDisk, VM.hotunplugDisk, VM.hotplugNic and
VM.hotunplugNic

Where can I find schema like information about all gluster commands?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.fedorahosted.org/pipermail/vdsm-devel/attachments/20131105/02b16a49/attachment.html>


More information about the vdsm-devel mailing list