[openstack-dev] [Openstack] [nova] Call for Help -- OpenStack API XML Support

Daniel P. Berrange berrange at redhat.com
Fri Aug 10 12:47:44 UTC 2012


On Thu, Aug 09, 2012 at 03:25:01PM -0700, Vishvananda Ishaya wrote:
> Hello Everyone,
> 
> We are in the unfortunate position of not knowing how good our OpenStack
> API XML support is. All of our integration tests use json. Many of the
> compute extensions don't even have XML deserializers. We also assume that
> there bugs we don't even know about due to underuse. We need to do something
> about XML by Folsom, because releasing a buggy api isn't good for anyone.

I don't know this area of Nova code at all, but I must say I'm
surprised that it actually needs explicit extra work to accept
or output XML, instead of JSON. It should be possible to auto
generate an XML document from a JSON document, and vica-verca.
At which point you'd not need to have 2 sets of tests for JSON
vs XML, all you need test is the XML<->JSON conversions.

I can imagine this isn't done because of a need to maintain
compat with some special XML schema that isn't a direct 1-1
mapping from the JSON schema ? Are there other complications
preventing this  being done

> 1) We get a lot of community support and we manage to get XML into usable shape by Folsom.
> 
> 2) We get enough community support to get the core api working and the most important extensions in place. We release clear documentation on what is expected to work.
> 
> 3) We get no support, in which case we mark XML support deprecated and encourage people to use JSON only.

4) Deprecate the current XML schemas, and declare new XML schemas
   which are a 1-1 mapping from the JSON

> Note that other openstack projects only support json, and there are
> already java bindings that use json so option 3) isn't terrible, but
> we don't want to go that route without discussing it with the community
> first. If anyone has alternative solutions or suggestions, feel free to
> let me know.

If we can get to a position where we auto-generate XML from JSON for Nova,
we could do the same for other projects too

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|



More information about the OpenStack-dev mailing list