** Changed in: keystone
       Status: Fix Committed => Fix Released

** Changed in: keystone
    Milestone: None => icehouse-1

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Keystone.
https://bugs.launchpad.net/bugs/1252466

Title:
  rules policy driver does not implement create_policy, delete_policy,
  get_policy, list_policies, update_policy, crashes on startup

Status in OpenStack Identity (Keystone):
  Fix Released

Bug description:
  When specifying the rules policy driver, keystone crashes on start up.

  (keystone.conf)
  [policy]
  #driver = keystone.policy.backends.sql.Policy
  driver = keystone.policy.backends.rules.Policy

  (keystone.log)
  2013-11-18 15:04:50.584 23679 INFO keystone.common.environment [-] KS-E2714F7 
Environment configured as: eventlet
  2013-11-18 15:04:51.156 23679 CRITICAL keystone [-] Can't instantiate 
abstract class Policy with abstract methods create_policy, delete_policy, 
get_policy, list_policies, update_policy
  2013-11-18 15:04:51.156 23679 TRACE keystone Traceback (most recent call 
last):
  2013-11-18 15:04:51.156 23679 TRACE keystone   File "/usr/bin/keystone-all", 
line 133, in <module>
  2013-11-18 15:04:51.156 23679 TRACE keystone     int(CONF.admin_port)))
  2013-11-18 15:04:51.156 23679 TRACE keystone   File "/usr/bin/keystone-all", 
line 59, in create_server
  2013-11-18 15:04:51.156 23679 TRACE keystone     app = 
deploy.loadapp('config:%s' % conf, name=name)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 247, in 
loadapp
  2013-11-18 15:04:51.156 23679 TRACE keystone     return loadobj(APP, uri, 
name=name, **kw)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 272, in 
loadobj
  2013-11-18 15:04:51.156 23679 TRACE keystone     return context.create()
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 710, in create
  2013-11-18 15:04:51.156 23679 TRACE keystone     return 
self.object_type.invoke(self)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 144, in invoke
  2013-11-18 15:04:51.156 23679 TRACE keystone     **context.local_conf)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/util.py", line 59, in fix_call
  2013-11-18 15:04:51.156 23679 TRACE keystone     reraise(*exc_info)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/compat.py", line 22, in reraise
  2013-11-18 15:04:51.156 23679 TRACE keystone     exec('raise t, e, tb', 
dict(t=t, e=e, tb=tb))
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/util.py", line 56, in fix_call
  2013-11-18 15:04:51.156 23679 TRACE keystone     val = callable(*args, **kw)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/urlmap.py", line 25, in urlmap_factory
  2013-11-18 15:04:51.156 23679 TRACE keystone     app = 
loader.get_app(app_name, global_conf=global_conf)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 350, in 
get_app
  2013-11-18 15:04:51.156 23679 TRACE keystone     name=name, 
global_conf=global_conf).create()
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 362, in 
app_context
  2013-11-18 15:04:51.156 23679 TRACE keystone     APP, name=name, 
global_conf=global_conf)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 450, in 
get_context
  2013-11-18 15:04:51.156 23679 TRACE keystone     
global_additions=global_additions)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 559, in 
_pipeline_app_context
  2013-11-18 15:04:51.156 23679 TRACE keystone     APP, pipeline[-1], 
global_conf)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 458, in 
get_context
  2013-11-18 15:04:51.156 23679 TRACE keystone     section)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 517, in 
_context_from_explicit
  2013-11-18 15:04:51.156 23679 TRACE keystone     value = 
import_string(found_expr)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 22, in 
import_string
  2013-11-18 15:04:51.156 23679 TRACE keystone     return 
pkg_resources.EntryPoint.parse("x=" + s).load(False)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/pkg_resources.py", line 1948, in load
  2013-11-18 15:04:51.156 23679 TRACE keystone     entry = 
__import__(self.module_name, globals(),globals(), ['__name__'])
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/keystone/service.py", line 56, in <module>
  2013-11-18 15:04:51.156 23679 TRACE keystone     policy_api=policy.Manager(),
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/keystone/common/dependency.py", line 35, in 
__wrapped_init__
  2013-11-18 15:04:51.156 23679 TRACE keystone     init(self, *args, **kwargs)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/keystone/policy/core.py", line 42, in __init__
  2013-11-18 15:04:51.156 23679 TRACE keystone     super(Manager, 
self).__init__(CONF.policy.driver)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/keystone/common/manager.py", line 36, in 
__init__
  2013-11-18 15:04:51.156 23679 TRACE keystone     self.driver = 
importutils.import_object(driver_name)
  2013-11-18 15:04:51.156 23679 TRACE keystone   File 
"/usr/lib/python2.6/site-packages/keystone/openstack/common/importutils.py", 
line 40, in import_object
  2013-11-18 15:04:51.156 23679 TRACE keystone     return 
import_class(import_str)(*args, **kwargs)
  2013-11-18 15:04:51.156 23679 TRACE keystone TypeError: Can't instantiate 
abstract class Policy with abstract methods create_policy, delete_policy, 
get_policy, list_policies, update_policy
  2013-11-18 15:04:51.156 23679 TRACE keystone

  The breakage happened with this change:
  https://review.openstack.org/#/c/50079/

To manage notifications about this bug go to:
https://bugs.launchpad.net/keystone/+bug/1252466/+subscriptions

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to