The philosophy from the keystone side of the fence is that once you have non-unique names you can't go back; whereas, it's trivial to go from unique to non-unique names. So, without a solid business case to push us in either direction, we started by enforcing uniqueness.<div>
<br></div><div>With the Identity API v3 draft discussions around domains, project/tenant hierarchies, etc, uniqueness has come up a few times (e.g. continuing to enforce uniqueness, but not globally... just within a domain/parent project).</div>
<div><br></div><div>Also, concerning "description" vs "name": identity API v2 currently provides both fields. In general:</div><div><br></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px">
<div>id: keystone managed, globally unique (based on UUID's at the moment)</div></blockquote><br><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div>name: user managed, unique within a keystone deployment</div>
</blockquote><br><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div>description: non-unique, optional</div></blockquote><div><br></div><div>-Dolph<br><div><br><div class="gmail_quote">On Tue, Jul 17, 2012 at 4:35 AM, Gary Kotton <span dir="ltr"><<a href="mailto:gkotton@redhat.com" target="_blank">gkotton@redhat.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><u></u>
<div bgcolor="#ffffff" text="#000000"><div class="im">
On 07/17/2012 10:39 AM, Salvatore Orlando wrote:
<blockquote type="cite">
<div>I don't think either of you is wrong. I too think that in
cases where it's not easy to find a majority, it might make
sense to just do what the other projects are doing. </div>
<div>Unfortunately for us, Keystone adopts the "name is unique"
phylosophy, whereas nova adopts "name is a label".</div>
<div><br>
</div>
<div>Is it worth considering renaming the attribute to
'name-label' and let it be non-unique and non-mandatory?</div>
</blockquote>
<br></div>
This works for me. <br><div><div class="h5">
<blockquote type="cite">
<div><br>
</div>
<div>Salvatore</div>
<div><br>
<div class="gmail_quote">On 16 July 2012 22:27, Dan Wendlandt <span dir="ltr"><<a href="mailto:dan@nicira.com" target="_blank">dan@nicira.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Hi Gary, this is an example of when I wish openstack APIs
had a "style-guide" to try to ensure some consistency across
projects.
<div><br>
</div>
<div>For those new to the conversation, the original topic
of discussion is whether "names" for API objects should be
forced to be unique (presumably within a tenant?) or
allowed to be duplicated. The general feeling from the
meeting was that since UUIDs are unique, the API itself
would not enforce name uniqueness. That also led to the
point that names should then be optional, since they are
really for informational/display purposes only. </div>
<div><br>
</div>
<div>Personally, I tend to think that "description" tends to
imply a sentence "private network for tenant1", rather
than a simple name "tenant1-net". There's also the fact
that other openstack services like nova and glance use the
term "name" with the similar (I believe) model that a name
need not be unique. </div>
<div><br>
</div>
<div>Would be curious to hear what others think. The only
thing I'm quite sure about is that there would be value in
creating some notion of "openstack API consistency best
practices" to give a more cohesive feel to APIs across
different projects in the openstack family.</div>
<div><br>
</div>
<div>Dan</div>
<div>
<div>
<div><br>
<br>
<div class="gmail_quote">On Mon, Jul 16, 2012 at 10:05
PM, Gary Kotton <span dir="ltr"><<a href="mailto:gkotton@redhat.com" target="_blank">gkotton@redhat.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi,<br>
If the name is intended to be a description then
how about the idea of calling the field
"description" instead. This is far more
descriptive and does not lend the user to think
that this should be unique.<br>
Thanks<br>
Gary<br>
<br>
_______________________________________________<br>
Mailing list: <a href="https://launchpad.net/%7Eopenstack" target="_blank">https://launchpad.net/~openstack</a><br>
Post to : <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a><br>
Unsubscribe : <a href="https://launchpad.net/%7Eopenstack" target="_blank">https://launchpad.net/~openstack</a><br>
More help : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a><br>
</blockquote>
</div>
<br>
<br clear="all">
<div><br>
</div>
</div>
</div>
<span><font color="#888888">-- <br>
~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
Dan Wendlandt
<div>Nicira, Inc: <a href="http://www.nicira.com" target="_blank">www.nicira.com</a><br>
<div>twitter: danwendlandt<br>
~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
</div>
</div>
<br>
</font></span></div>
<br>
_______________________________________________<br>
Mailing list: <a href="https://launchpad.net/%7Eopenstack" target="_blank">https://launchpad.net/~openstack</a><br>
Post to : <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a><br>
Unsubscribe : <a href="https://launchpad.net/%7Eopenstack" target="_blank">https://launchpad.net/~openstack</a><br>
More help : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a><br>
<br>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</div></div></div>
<br>_______________________________________________<br>
Mailing list: <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
Post to : <a href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a><br>
Unsubscribe : <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
More help : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a><br>
<br></blockquote></div><br></div></div>