[openstack-dev] [Keystone][Marconi][Oslo] Discoverable home document for APIs (Was: Re: [Nova][Glance] Support of v1 and v2 glance APIs in Nova)
Flavio Percoco
flavio at redhat.com
Tue Nov 26 08:47:18 UTC 2013
On 25/11/13 16:50 -0600, Dolph Mathews wrote:
>
>On Mon, Nov 25, 2013 at 2:41 AM, Flavio Percoco <flavio at redhat.com> wrote:
>
> On 25/11/13 09:28 +1000, Jamie Lennox wrote:
>
> So the way we have this in keystone at least is that querying GET /
> will
> return all available API versions and querying /v2.0 for example is a
> similar result with just the v2 endpoint. So you can hard pin a version
> by using the versioned URL.
>
> I spoke to somebody the other day about the discovery process in
> services. The long term goal should be that the service catalog
> contains
> unversioned endpoints and that all clients should do discovery. For
> keystone the review has been underway for a while now:
> https://review.openstack.org/#/c/38414/ the basics of this should be
> able to be moved into OSLO for other projects if required.
>
>
> Did you guys create your own 'home document' language? or did you base
> it on some existing format? Is it documented somewhere? IIRC, there's
> a thread where part of this was discussed, it was related to horizon.
>
> I'm curious to know what you guys did and if you knew about
> JSON-Home[0] when you started working on this.
>
>
>It looks like our multiple choice response might predate Nottingham's proposal,
>but not by much. In keystone, it's been stable since I joined the project,
>midway through the diablo cycle (summer 2011). I don't know any more history
>than that, but I've CC'd Jorge Williams, who probably knows.
>
>I really like Nottingham's approach of adding relational links from the base
>endpoint, I've been thinking about doing the same for keystone for quite a
>while.
As crazy as it sounds, have you guys considered migrating to
Nottingham's approach?
We picked this approach because we didn't want to invent it ourselves
and this happens to have a well defined RFC as well.
If there's something Nottingham's proposal lacks of, I think we could
provide some feedback and help making it better.
>
> We used json-home for Marconi v1 and we'd want the client to work in a
> 'follow your nose' way. Since, I'd prefer OpenStack modules to use the
> same language for this, I'm curious to know why - if so - you
> created your own spec, what are the benefits and if it's documented
> somewhere.
>
>
>Then why didn't Marconi follow the lead of one of the other projects? ;)
LOOOL, I knew you were going to say that. I think I knew about you
guys having something similar but at some point I most have forgotten
about it. That being said, the main rationals were:
1) Using something documented and known upstream made more sense
and it also helps getting more contributions from the community.
2) We already knew it, which falls back in point 1.
>I completely agree though - standardized version discovery across the ecosystem
>would be fantastic.
All that being said, I don't think it would be very hard to migrate
Marconi to something common if we agree that json-home is not good
enough for OpenStack. Nonetheless, it'd be a shame not to provide
feedback to Mark Nottingham about it. So far, his approach has been
good enough for us - but, you know, Marconi is still way too small.
Is keystone's home schema spec documented somewhere?
Cheers,
FF
--
@flaper87
Flavio Percoco
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: not available
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20131126/e469365f/attachment.pgp>
More information about the OpenStack-dev
mailing list