[openstack-dev] [Solum] Should app names be unique?
roshan.agrawal at RACKSPACE.COM
Wed Mar 11 20:49:38 UTC 2015
I can attest to the customer preference (from the customer survey and research) to working with names (as opposed to UUIDs).
My vote would be to optimize for user experience, and then figure out an implementation approach that solves for that. On the question on blue-green deployments, I am not bought in that having duplicate names is the most elegant way to support the feature. It will be worthwhile for one of us to propose a solution for blue-green deployments that works with enforcement of unique app names.
As the examples below indicate, there is no consistency within open stack on allowing duplicate names.
From: Murali Allada [mailto:murali.allada at RACKSPACE.COM]
Sent: Wednesday, March 11, 2015 3:12 PM
To: openstack-dev at lists.openstack.org
Subject: Re: [openstack-dev] [Solum] Should app names be unique?
The only reason this came up yesterday is because we wanted Solums 'app create' behavior to be consistent with other openstack services.
However, if heat has a unique stack name constraint and glance\nova don't, then the argument of consistency does not hold.
I'm still of the opinion that we should have a unique name constraint for apps and languagepacks within a tenants namespace, as it can get very confusing if a user creates multiple apps with the same name.
Also, customer research done here at Rackspace has shown that users prefer using 'names' rather than 'UUIDs'.
From: Devdatta Kulkarni <devdatta.kulkarni at RACKSPACE.COM<mailto:devdatta.kulkarni at RACKSPACE.COM>>
Sent: Wednesday, March 11, 2015 2:48 PM
To: openstack-dev at lists.openstack.org<mailto:openstack-dev at lists.openstack.org>
Subject: [openstack-dev] [Solum] Should app names be unique?
Hi Solum team,
In yesterday's team meeting the question of whether Solum should enforce unique app name constraint
within a tenant came up.
As a recollection, in Solum one can create an 'app' using:
solum app create --plan-file <plan-file> --name <app-name>
Currently Solum does support creating multiple apps with the same name.
However, in yesterday's meeting we were debating/discussing whether this should be the case.
The meeting log is available here:
To set the context for discussion, consider the following:
- heroku does not allow creating another app with the same name as that of an already existing app
- github does not allow creating another repository with the same name as that of an already existing repo
Thinking about why this might be in case for heroku, one aspect that comes to mind is the setting of a 'remote' using
the app name. When we do a 'git push', it happens to this remote.
When we don't specify a remote in 'git push' command, git defaults to using the 'origin' remote.
Even if multiple remotes with the same name were to be possible, when using an implicit command such as 'git push',
in which some of the input comes from the context, the system will not be able to disambiguate which remote to use.
So requiring unique names ensures that there is no ambiguity when using such implicit commands.
This might also be the reason why on github we cannot create repository with an already existing name.
But this is just a guess for why unique names might be required. I could be totally off.
I think Solum's use case is similar.
Agreed that Solum currently does not host application repositories and so there is no question of
Solum generated remotes. But by allowing non-unique app names
it might be difficult to support this feature in the future.
As an aside, I checked what position other Openstack services take on this issue.
1) Heat enforces unique stack-name constraint.
2) Nova does not enforce this constraint.
So it is clear that within Openstack there is no consistency on this issue.
What should Solum do?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the OpenStack-dev