Package: python-keystone
Version: 2012.1~rc1-1
Severity: grave
File: keystone
Tags: sid
Justification: renders package unusable
The python-keystone depends upon python-webob, but does not list a version
dependency. The egg package info lists WebOb 1.0.8 as a requirement, which
means as soon as the package is installed and swift/nova attempt to load it,
you receive a VersionConflict error:
Traceback (most recent call last):
File "/usr/bin/swift-proxy-server", line 22, in <module>
run_wsgi(conf_file, 'proxy-server', default_port=8080, **options)
File "/usr/lib/python2.6/dist-packages/swift/common/wsgi.py", line 122, in
run_wsgi
loadapp('config:%s' % conf_file, global_conf={'log_name': log_name})
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 204, in
loadapp
return loadobj(APP, uri, name=name, **kw)
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 224, in
loadobj
global_conf=global_conf)
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 248, in
loadcontext
global_conf=global_conf)
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 278, in
_loadconfig
return loader.get_context(object_type, name, global_conf)
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 405, in
get_context
global_additions=global_additions)
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 503, in
_pipeline_app_context
for name in pipeline[:-1]]
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 409, in
get_context
section)
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 431, in
_context_from_use
object_type, name=use, global_conf=global_conf)
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 361, in
get_context
global_conf=global_conf)
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 248, in
loadcontext
global_conf=global_conf)
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 285, in
_loadegg
return loader.get_context(object_type, name, global_conf)
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 561, in
get_context
object_type, name=name)
File "/usr/lib/pymodules/python2.6/paste/deploy/loadwsgi.py", line 581, in
find_egg_entry_point
pkg_resources.require(self.spec)
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 654, in require
needed = self.resolve(parse_requirements(requirements))
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 556, in resolve
raise VersionConflict(dist,req) # XXX put more info here
pkg_resources.VersionConflict: (WebOb 1.1.1 (/usr/lib/python2.6/dist-packages),
Requirement.parse('WebOb==1.0.8'))
A similar issue exists with pam, and I'll raise that as a separate bug report
once this one is confirmed and I'm not overlooking something.
To reproduce:
* apt-get install python-keystone swift-proxy
* configure /etc/swift/proxy-server.conf similar to the below to enable
keystone for authentication
* swift-proxy-server /etc/swift/proxy-server.conf
/etc/swift/proxy-server.conf:
--
[DEFAULT]
bind_port = 80
workers = 1
user = swift
[pipeline:main]
# ratelimit?
pipeline = healthcheck cache keystone proxy-server
[app:proxy-server]
use = egg:swift#proxy
allow_account_management = true
account_autocreate = false
[filter:keystone]
use = egg:keystone#swiftauth
auth_protocol = https
auth_host = 127.0.0.0
auth_port = 35357
admin_token = 999888777666
delay_auth_decision = 0
service_protocol = https
service_host = 127.0.0.0
service_port = 5000
service_pass = dTpw
cache = swift.cache
[filter:healthcheck]
use = egg:swift#healthcheck
[filter:cache]
use = egg:swift#memcache
# multi-proxy config not supported
memcache_servers =
--
-- System Information:
Debian Release: 6.0.4
APT prefers stable
APT policy: (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.32-5-amd64 (SMP w/1 CPU core)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash
Versions of packages python-keystone depends on:
ii python 2.6.6-3+squeeze6 interactive high-level object-orie
ii python-dateutil 1.4.1-3 powerful extensions to the standar
ii python-eventlet 0.9.16-2 concurrent networking library for
ii python-greenlet 0.3.3-1 Lightweight in-process concurrent
ii python-httplib2 0.6.0-4 comprehensive HTTP client library
ii python-lxml 2.2.8-2 pythonic binding for the libxml2 a
ii python-migrate 0.6-4 Database schema migration for SQLA
ii python-pam 0.4.2-12.2+squeeze1 A Python interface to the PAM libr
ii python-passlib 1.5.3-1~bpo60+1 comprehensive password hashing fra
ii python-paste 1.7.5.1-1 tools for using a Web Server Gatew
ii python-pastedeploy 1.3.3-3 load, configure, and compose WSGI
ii python-pastescript 1.7.3-6 serving web applications, creating
ii python-routes 1.12.3-1 Routing Recognition and Generation
ii python-sqlalchemy 0.6.3-3 SQL toolkit and Object Relational
ii python-sqlite 1.0.1-7+b1 python interface to SQLite 2
ii python-webob 1.1.1-1~bpo60+1 Python module providing WSGI reque
ii python2.6 2.6.6-8+b1 An interactive high-level object-o
Versions of packages python-keystone recommends:
ii python-ldap 2.3.11-1 LDAP interface module for Python
ii python-memcache 1.45-1 pure python memcached client
python-keystone suggests no packages.
-- no debconf information
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]