On 27/11/13 18:16, Jay Pipes wrote:
On 11/27/2013 12:02 PM, Zane Bitter wrote:
Your proposal on the wiki page retains this URL but removes the tenant
ID:

    GET /v2/stacks/{stack_name}

This now no longer uniquely identifies a stack, and is therefore not
ReST.

It would be along with a Vary: X-Project-Id header, no?

Sure, but the point of HTTP is that a URI addresses exactly one resource. A resource may have multiple representations and the one returned can depend on the headers, but a URI should never address more than one resource.

For example, you could easily imagine a situation where you end up getting served data for another tenant from a cache somewhere, which would be Very Bad.

So if we drop the tenant_id then we should also start addressing stacks
only by UUID:

     GET v2/stacks/{stack_id}

and do lookups by name using stack list or something. However other
projects do it.

++ for this anyway :)

This seems clearly worse than the API we have, but it would at least be
consistent with other OpenStack projects. For them this API makes more
sense, because they don't enforce unique names for things in a tenant
and probably couldn't start if they wanted to. This was IMHO a mistake,
and one that Heat avoided, but I accept that it's hard to escape gravity
on this. I, for one, welcome our new UUID overlords.

LOL. Actually, in Nova and other places it's now moving to UNIQUE
CONSTRAINT (name, project, deleted) ;)

Oh, perfect :) Then we should just keep the tenant_id and wait for everyone else to circle back around :D

Even better would be if we had the keystone domain (instead of the tenant id) incorporated into the endpoint in the keystone catalog and then we could use the tenant^W project *name* in the URL and users would never have to deal with UUIDs and invisible headers again - your server is always at /my-project-name/servers/my-server-name. Where you might expect it to be.

cheers,
Zane.

_______________________________________________
OpenStack-dev mailing list
[email protected]
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to