[Openstack-devel] Bug#665804: keystone: python-webob dependency mismatch between package and egg-info dependencies (requires 1.0.8)
Chris Boulton
chris at bigcommerce.com
Mon Mar 26 10:06:25 UTC 2012
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
More information about the Openstack-devel
mailing list