[Openstack] Managing API Extensions

Mark Nottingham mnot at mnot.net
Wed May 16 09:17:03 UTC 2012


At the Folsom Summit, we had a session on extensibility <http://etherpad.openstack.org/FolsomAPIExtensions>.

I took an action item to propose a wiki approach to managing our extensions with a registry. The attached documents (in MultiMarkdown, can be converted to the wiki easily enough) are my go at it. 

"extensions.md" is an overview document explaining how they work; "extension-registry.md" is the actual registry document.

A few notes:

* The registries aren't complete yet; I've enumerated the Compute extensions listed on <http://docs.rackspace.com/openstack-extensions/>, but I know there are more, and of course there are the other APIs. The current document should give people a flavour for what they'd be like, though.

* In the extension-registry document, query extensions, action extensions and state extensions have TODOs, because it's not clear to me what syntactic constraints we put on these extensions. If no one has strong feelings, I'll define something, but I thought I'd ask first.

* This approach requires different parts of the API (e.g., resources, parts of a format) to explicitly identify themselves as extensible, so there's a little bit more documentation work to be done.

* I'm not very happy with the actions registry, but I think that has more to do with the design of actions than anything else. More on this soon.

* If we end up getting lots of extensions registered, we may need to restructure the presentation of the registries, and possibly introduce more process. However, that shouldn't change the basic approach.

Cheers,

-------------- next part --------------
A non-text attachment was scrubbed...
Name: extension-registry.md
Type: application/octet-stream
Size: 5202 bytes
Desc: not available
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120516/438e6c29/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: extensions.md
Type: application/octet-stream
Size: 6864 bytes
Desc: not available
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20120516/438e6c29/attachment-0001.obj>
-------------- next part --------------



--
Mark Nottingham   http://www.mnot.net/





More information about the Openstack mailing list