Project creation fails if the current user is added to it
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Dashboard (Horizon) |
Fix Released
|
High
|
Lin Hua Cheng |
Bug Description
This is happening in a fresh Devstack deployment on Ubuntu 12.04 LTS.
Steps to reproduce:
1. Log in as admin
2. Go to projects tab
3. Create a new project; click in Users tab within the modal for the project creation and add the current user as a member of the new project.
Actual behavior: An error notification pops (There was an error submitting the form. Please try again.) and after a refresh I get an unauthorized error for every menu in the dashboard.
Expected behavior: create a new project and add current user to its users list with the selected role.
## Traceback ##
Environment:
Request Method: GET
Request URL: http://
Django Version: 1.4.5
Python Version: 2.7.3
Installed Applications:
['openstack_
'django.
'django.
'django.
'django.
'django.
'django.
'compressor',
'horizon',
'openstack_
'openstack_
'openstack_
'openstack_auth']
Installed Middleware:
('django.
'django.
'django.
'django.
'django.
'horizon.
'django.
'django.
'django.
Traceback:
File "/usr/local/
111. response = callback(request, *callback_args, **callback_kwargs)
File "/opt/stack/
38. return view_func(request, *args, **kwargs)
File "/opt/stack/
86. return view_func(request, *args, **kwargs)
File "/opt/stack/
54. return view_func(request, *args, **kwargs)
File "/opt/stack/
38. return view_func(request, *args, **kwargs)
File "/usr/local/
48. return self.dispatch(
File "/usr/local/
69. return handler(request, *args, **kwargs)
File "/opt/stack/
155. handled = self.construct_
File "/opt/stack/
146. handled = self.handle_
File "/opt/stack/
118. data = self._get_
File "/opt/stack/
182. self._data = {self.table_
File "/opt/stack/
77. _("Unable to retrieve project list."))
File "/opt/stack/
74. tenants = api.keystone.
File "/opt/stack/
150. return keystoneclient(
File "/opt/stack/
116. tenant_list = self._list(
File "/opt/stack/
67. resp, body = self.api.get(url)
File "/opt/stack/
408. return self._cs_
File "/opt/stack/
404. **kwargs)
File "/opt/stack/
366. raise exceptions.
Exception Type: Unauthorized at /admin/projects/
Exception Value: Unable to communicate with identity service: {"error": {"message": "Could not find token: 0258edbd0b1378b
##
Changed in horizon: | |
status: | New → Confirmed |
Changed in horizon: | |
importance: | Undecided → Critical |
importance: | Critical → High |
milestone: | none → havana-1 |
Changed in horizon: | |
milestone: | havana-1 → havana-2 |
Changed in horizon: | |
assignee: | nobody → Lin Hua Cheng (lin-hua-cheng) |
Changed in horizon: | |
status: | Fix Committed → Fix Released |
Changed in horizon: | |
milestone: | havana-2 → 2013.2 |
This is likely due to the fix for bug 1060426. It would appear we need to log out the user after updating their tenant information, or better deal with invalid tokens. This also applies to other users: if user demo is logged in and as an admin I add them to a new project, errors start popping up for the demo user.