[openstack-dev] [Neutron] Rename tenant to project: discussion
Henry Gessau
gessau at gmail.com
Fri Dec 4 19:28:06 UTC 2015
Kevin Benton <blak111 at gmail.com> wrote:
> So obviously the stuff in the client can be updated since most of that is
> user-facing. However, on the server side maybe we can start out by keeping all
> of the internal code and DB tables the same. Then all we need to worry about
> is the API translation code to start.
>
> Once our public-facing stuff is done, we can just start the transition to
> project_id internally at our own pace and in much less invasive chunks.
I agree with Kevin's suggestion.
> On Thu, Dec 3, 2015 at 10:25 AM, Smigiel, Dariusz <dariusz.smigiel at intel.com
> <mailto:dariusz.smigiel at intel.com>> wrote:
>
> Hey Neutrinos (thanks armax for this word :),
> Keystone is planning to deprecate V2 API (again :). This time in Mitaka
> [6], and probably forever. It will stay at least four releases, but we
> need to decide, how to conquer problem of renaming...
> And more important: consider if it's a problem for Neutron?
>
> I'm looking at blueprint [1] about renaming all occurrences of 'tenant' to
> 'project', and trying to find out all the details.
> First attempt to solve this problem was raised in November 2013 [4][5] but
> unfortunately, no one finished it. Although Keystone V3 API is already
> supported in Neutron client [2], there are still some unknowns about
> Neutron server side. Monty Taylor is trying to address necessary (if any)
> changes [3].
>
> Findings:
> I've focused on two projects: python-neutronclient and neutron.
> grep found 429 occurrences of 'tenant' in Client while Server has 3021 of
> it. Some of them are just documentation and docstrings, but there are a
> lot of places, where variables are tangled: defined in DB, used in server,
> accessed by client. Most of places are just internal usages. The only
> thing where I've found 'public' information about tenants is 'help'
> command in neutron client.
>
> Suggested plan for conquer:
> 1. First step would be to deal with neutronclient. It's much smaller
> amount of code to look through, update all places and be successful :)
> 2. Bigger challenge will be to change server side code. I'd suggest to
> start with renaming db columns. It affects a lot of places, so when
> finished should significantly lower number of remained "tenants".
> 3. Deal with all other places.
>
> Pros:
> - variable names unification in OpenStack code base. Someone needs to
> start this job.
> - one way to describe the same thing, instead of: tenant/account/project.
> Helpful, especially for newcomers.
> - alignment with Keystone V3 API
>
> Cons:
> - A. Lot. Of. Work.
> - dealing with DB migrations
> - about 2-4 weeks of work for every part of code. Additional, a lot of
> patchsets to be reviewed.
>
> What do you think about this? About proposed way of dealing with all changes?
> Is this change necessary?
> Did I forget about something?
>
> I'll be grateful for any kind of feedback.
>
> Thanks,
> Dariusz Smigiel (dasm)
> Intel Technology Poland
>
> [1] https://blueprints.launchpad.net/neutron/+spec/rename-tenant-to-project
> [2]
> https://blueprints.launchpad.net/python-neutronclient/+spec/keystone-api-v3-support
> [3] https://bugs.launchpad.net/neutron/+bug/1503428
> [4]
> http://lists.openstack.org/pipermail/openstack-dev/2013-November/020457.html
> [5]
> http://lists.openstack.org/pipermail/openstack-dev/2013-December/021083.html
> [6]
> http://lists.openstack.org/pipermail/openstack-dev/2015-November/080816.htm
>
More information about the OpenStack-dev
mailing list