** Changed in: horizon/havana
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Dashboard (Horizon).
https://bugs.launchpad.net/bugs/1231357

Title:
  Inconsistance between horizon and django_openstack_auth default
  keystone version

Status in OpenStack Dashboard (Horizon):
  Fix Released
Status in OpenStack Dashboard (Horizon) havana series:
  Fix Released

Bug description:
  If one does not set in "local_settings.py":

  OPENSTACK_API_VERSIONS = {
      "identity": 2.0
  }

  django_openstack_auth falls back to version 2.0, and horizon to
  version 3.

  This leads to weird behaviour.
  When the keystone API is version 2.0 and that horizon falls back on to using 
3 you get this:
  - In the dashboard, as admin, add your user to a project.
  - Log out and in
  - You can select the project
  - select the project you are admin on, and go to the admin tab
  - remove yourself from the project you added yourself previously.
  - Log out and in
  - You can still see the project from which you removed yourself but can't 
select it (it falls back to the one you realy belong to).
  - You can still see yourself in the project via the shell command "keystone 
user-list --tenant <project_id>"
  - the "keystone user-role-remove --user <user_id> --tenant <project_id> 
--role <role_id>" fails with the following message: "Cannot remove role that 
has not been granted" even though you can list yourself in it with the previous 
command.

  We should have a coherent fall-back version.
  The best would be a real detection of the API version and a fall-back if 
detection fails, but the fall-back should be coherent (same mechanism -> same 
module).

  In order to be DRY (Don't Repeat Yourself), since horizon requires the  
django_openstack_auth, horizon should e.g. use 
"openstack_auth.utils.get_keystone_version()" in order to set 
horizon.openstack_dashboard.keystone.VERSIONS.preferred_version
  instead of forcing it to a hard-coded 3, so we should have:
  from openstack_auth import utils
  VERSIONS = IdentityAPIVersionManager("identity", 
preferred_version=utils.get_keystone_version())
  instead of:
  VERSIONS = IdentityAPIVersionManager("identity", preferred_version=3)

  but the method to use to have coherent fall-back is open to debate.

To manage notifications about this bug go to:
https://bugs.launchpad.net/horizon/+bug/1231357/+subscriptions

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to