This option trips up keystone-all, because it cannot load the keystone.contrib.access python module.
Looking at the python-keystone yum package (downloaded as a dependency of the openstack-keystone package), indeed it does NOT implement that module.
The error log from starting the keystone service:
$ HOME=/var/lib/keystone keystone-all --debug
Traceback (most recent call last):
File "/usr/bin/keystone-all", line 104, in <module>
int(CONF.admin_port)))
File "/usr/bin/keystone-all", line 34, in create_server
app = deploy.loadapp('config:%s' % conf, name=name)
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py", line 247, in loadapp
return loadobj(APP, uri, name=name, **kw)
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py", line 272, in loadobj
return context.create()
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py", line 710, in create
return self.object_type.invoke(self)
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py", line 144, in invoke
**context.local_conf)
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/util.py", line 56, in fix_call
val = callable(*args, **kw)
File "/usr/lib/python2.6/site-packages/paste/urlmap.py", line 25, in urlmap_factory
app = loader.get_app(app_name, global_conf=global_conf)
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py", line 350, in get_app
name=name, global_conf=global_conf).create()
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py", line 362, in app_context
APP, name=name, global_conf=global_conf)
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py", line 450, in get_context
global_additions=global_additions)
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py", line 562, in _pipeline_app_context
for name in pipeline[:-1]]
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py", line 458, in get_context
section)
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py", line 517, in _context_from_explicit
value = import_string(found_expr)
File "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py", line 22, in import_string
return pkg_resources.EntryPoint.parse("x=" + s).load(False)
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 1948, in load
entry = __import__(self.module_name, globals(),globals(), ['__name__'])
ImportError: No module named access
The openstack-identity cookbook contains a template called keystone.conf.erb with the following option:
[filter:access_log] factory = keystone. contrib. access: AccessLogMiddle ware.factory
paste.filter_
This option trips up keystone-all, because it cannot load the keystone. contrib. access python module.
Looking at the python-keystone yum package (downloaded as a dependency of the openstack-keystone package), indeed it does NOT implement that module.
The error log from starting the keystone service:
$ HOME=/var/ lib/keystone keystone-all --debug keystone- all", line 104, in <module> CONF.admin_ port))) keystone- all", line 34, in create_server loadapp( 'config: %s' % conf, name=name) python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ loadwsgi. py", line 247, in loadapp python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ loadwsgi. py", line 272, in loadobj python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ loadwsgi. py", line 710, in create type.invoke( self) python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ loadwsgi. py", line 144, in invoke local_conf) python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ util.py" , line 56, in fix_call python2. 6/site- packages/ paste/urlmap. py", line 25, in urlmap_factory get_app( app_name, global_ conf=global_ conf) python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ loadwsgi. py", line 350, in get_app conf=global_ conf).create( ) python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ loadwsgi. py", line 362, in app_context conf=global_ conf) python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ loadwsgi. py", line 450, in get_context additions= global_ additions) python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ loadwsgi. py", line 562, in _pipeline_ app_context python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ loadwsgi. py", line 458, in get_context python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ loadwsgi. py", line 517, in _context_ from_explicit string( found_expr) python2. 6/site- packages/ PasteDeploy- 1.5.0-py2. 6.egg/paste/ deploy/ loadwsgi. py", line 22, in import_string EntryPoint. parse(" x=" + s).load(False) python2. 6/site- packages/ pkg_resources. py", line 1948, in load _(self. module_ name, globals( ),globals( ), ['__name__'])
Traceback (most recent call last):
File "/usr/bin/
int(
File "/usr/bin/
app = deploy.
File "/usr/lib/
return loadobj(APP, uri, name=name, **kw)
File "/usr/lib/
return context.create()
File "/usr/lib/
return self.object_
File "/usr/lib/
**context.
File "/usr/lib/
val = callable(*args, **kw)
File "/usr/lib/
app = loader.
File "/usr/lib/
name=name, global_
File "/usr/lib/
APP, name=name, global_
File "/usr/lib/
global_
File "/usr/lib/
for name in pipeline[:-1]]
File "/usr/lib/
section)
File "/usr/lib/
value = import_
File "/usr/lib/
return pkg_resources.
File "/usr/lib/
entry = __import_
ImportError: No module named access