Bug 800704 - keystone endpoint-list tracebacks
Summary: keystone endpoint-list tracebacks
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: openstack-keystone
Version: 17
Hardware: x86_64
OS: Linux
unspecified
unspecified
Target Milestone: ---
Assignee: Matt Domsch
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-03-07 00:58 UTC by Pete Zaitcev
Modified: 2012-03-12 01:58 UTC (History)
9 users (show)

Fixed In Version: openstack-keystone-2012.1-0.10.e4.fc17
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-03-12 01:58:40 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Pete Zaitcev 2012-03-07 00:58:20 UTC
Description of problem:

Running keystone endpoint-list tracebacks. This is needed to run Glance
(and Swift) for the Test Day 2012-8-3.

Version-Release number of selected component (if applicable):

openstack-keystone-2012.1-0.9.e4.fc17.noarch

How reproducible:

synchronous

Steps to Reproduce:
1. Follow Test Day instructions
   https://fedoraproject.org/wiki/Test_Day:2012-03-08_OpenStack_Test_Day
2. At the step "Start glance services", run "glance index"
   fails with "Response from Keystone does not contain a Glance endpoint."
3. Verify with "keystone endpoint-list" that Keystone is busted
  
Actual results:

Unable to list endpoints

Expected results:

Lists endpoints

Additional info:

keystone user-list, keystone service-list work ok

[root@niphredil zaitcev]# glance index
Failed to show index. Got error:
Response from Keystone does not contain a Glance endpoint.
[root@niphredil zaitcev]# 
[root@niphredil zaitcev]# keystone endpoint-list
No handlers could be found for logger "keystoneclient.client"
Unable to communicate with identity service: Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/eventlet/wsgi.py", line 336, in handle_
one_response
    result = self.application(self.environ, start_response)
  File "/usr/lib/python2.7/site-packages/paste/urlmap.py", line 203, in __call__
    return app(environ, start_response)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 147, in __call__
    resp = self.call_func(req, *args, **self.kwargs)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 210, in call_func
    return self.func(req, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/keystone/common/wsgi.py", line 282, in __call__
    response = request.get_response(self.application)
  File "/usr/lib/python2.7/site-packages/webob/request.py", line 1086, in get_response
    application, catch_exc_info=False)
  File "/usr/lib/python2.7/site-packages/webob/request.py", line 1055, in call_application
    app_iter = application(self.environ, start_response)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 147, in __call__
    resp = self.call_func(req, *args, **self.kwargs)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 210, in call_func
    return self.func(req, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/keystone/common/wsgi.py", line 282, in __call__
    response = request.get_response(self.application)
  File "/usr/lib/python2.7/site-packages/webob/request.py", line 1086, in get_response
    application, catch_exc_info=False)
  File "/usr/lib/python2.7/site-packages/webob/request.py", line 1055, in call_application
    app_iter = application(self.environ, start_response)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 147, in __call__
    resp = self.call_func(req, *args, **self.kwargs)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 210, in call_func
    return self.func(req, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/keystone/common/wsgi.py", line 282, in __call__
    response = request.get_response(self.application)
  File "/usr/lib/python2.7/site-packages/webob/request.py", line 1086, in get_response
    application, catch_exc_info=False)
  File "/usr/lib/python2.7/site-packages/webob/request.py", line 1055, in call_application
    app_iter = application(self.environ, start_response)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 147, in __call__
    resp = self.call_func(req, *args, **self.kwargs)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 210, in call_func
    return self.func(req, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/keystone/common/wsgi.py", line 282, in __call__
    response = request.get_response(self.application)
  File "/usr/lib/python2.7/site-packages/webob/request.py", line 1086, in get_response
    application, catch_exc_info=False)
  File "/usr/lib/python2.7/site-packages/webob/request.py", line 1055, in call_application
    app_iter = application(self.environ, start_response)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 147, in __call__
    resp = self.call_func(req, *args, **self.kwargs)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 210, in call_func
    return self.func(req, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/keystone/common/wsgi.py", line 305, in __call__
    resp = req.get_response(self.application)
  File "/usr/lib/python2.7/site-packages/webob/request.py", line 1086, in get_response
    application, catch_exc_info=False)
  File "/usr/lib/python2.7/site-packages/webob/request.py", line 1055, in call_application
    app_iter = application(self.environ, start_response)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 159, in __call__
    return resp(environ, start_response)
  File "/usr/lib/python2.7/site-packages/routes/middleware.py", line 131, in __call__
    response = self.app(environ, start_response)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 159, in __call__
    return resp(environ, start_response)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 159, in __call__
    return resp(environ, start_response)
  File "/usr/lib/python2.7/site-packages/routes/middleware.py", line 131, in __call__
    response = self.app(environ, start_response)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 159, in __call__
    return resp(environ, start_response)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 147, in __call__
    resp = self.call_func(req, *args, **self.kwargs)
  File "/usr/lib/python2.7/site-packages/webob/dec.py", line 210, in call_func
    return self.func(req, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/keystone/common/wsgi.py", line 180, in __call__
    result = method(context, **params)
  File "/usr/lib/python2.7/site-packages/keystone/catalog/core.py", line 88, in get_endpoints
    endpoint_list = self.catalog_api.list_endpoints(context)
  File "/usr/lib/python2.7/site-packages/keystone/common/manager.py", line 30, in __getattr__
    f = getattr(self.driver, name)
AttributeError: 'TemplatedCatalog' object has no attribute 'list_endpoints'
. (HTTP 500)
[root@niphredil zaitcev]# env | grep OS
HOSTNAME=niphredil.zaitcev.lan
        :k3=\EOR:k4=\EOS:k5=\E[15~:k6=\E[17~:k7=\E[18~:\
OS_PASSWORD=admpass
OS_AUTH_URL=http://127.0.0.1:5000/v2.0/
OS_USERNAME=admin
OS_TENANT_NAME=admin
[root@niphredil zaitcev]# env | grep ADMIN
[root@niphredil zaitcev]#

Comment 1 Sergio Jimenez 2012-03-08 00:04:04 UTC
I've got the same problem, following wiki instructions for OpenStack test day, when trying to register an image I get:


[sergio@openstack ~]$ glance add name=f16 is_public=true disk_format=qcow2 container_format=ovf copy_from=http://berrange.fedorapeople.org/images/2012-02-29/f16-x86_64-openstack-sda.qcow2 
Failed to add image. Got error:
Response from Keystone does not contain a Glance endpoint.
Note: Your image metadata may still be in the registry, but the image's status will likely be 'killed'.


And trying to list endpoints I get same error as Pete.

My environment:


[sergio@openstack ~]$ env | grep OS_
OS_PASSWORD=admpass
OS_AUTH_URL=http://127.0.0.1:5000/v2.0/
OS_USERNAME=admin
OS_TENANT_NAME=admin

Comment 2 Alan Pevec 2012-03-08 00:25:32 UTC
TemplatedCatalog backend doesn't support operations on endpoints and services are not persistet. I'm changing default for Fedora to catalog sql backend along with sample data script changes:
https://review.openstack.org/#change,5049

Comment 3 Pete Zaitcev 2012-03-08 03:01:39 UTC
Sergio, a workaround for the Test Day exists. Use this to add the endpoints:

https://fedoraproject.org/wiki/Getting_started_with_OpenStack_on_Fedora_17#Configure_glance_to_use_keystone

Using that and re-running parts of the openstack-keystone-sample-data
script that add endpoints allowed me to continue. See the change that
Alan linked to identify the required part of the default template.

However, the crash of "keystone endpoint-list" is different.

Comment 4 Fedora Update System 2012-03-08 03:30:30 UTC
openstack-keystone-2012.1-0.10.e4.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/openstack-keystone-2012.1-0.10.e4.fc17

Comment 5 Alan Pevec 2012-03-08 03:35:00 UTC
Until this update reaches mirrors, you can use the temporary repository: http://repos.fedorapeople.org/repos/apevec/openstack-preview/fedora-17/noarch/

Comment 6 Fedora Update System 2012-03-08 05:53:55 UTC
Package openstack-keystone-2012.1-0.10.e4.fc17:
* should fix your issue,
* was pushed to the Fedora 17 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing openstack-keystone-2012.1-0.10.e4.fc17'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-3381/openstack-keystone-2012.1-0.10.e4.fc17
then log in and leave karma (feedback).

Comment 7 Fedora Update System 2012-03-12 01:58:40 UTC
openstack-keystone-2012.1-0.10.e4.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.