← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1269157] [NEW] Notifications wrapper doesn't work with Trusts Keystone resource

 

Public bug reported:

When implementing Keystone notifications for Trusts, an IndexError is
returned saying 'tuple index out of range'.

http://paste.openstack.org/show/61217/

This causes notification to fail when creating trusts in Keystone. I
believe the reason why args isn't "indexible" is because all the
information about the trust is stored in kwargs, and the only element in
args is an object (keystone.trusts.core.Manager).

See the following paste for the pdb output (pdb.set_trace() placed here:
https://github.com/openstack/keystone/blob/master/keystone/notifications.py#L48
right before _send_notification()):

http://paste.openstack.org/show/61218/

args only has one thing in it, and the trust_id, or the resource_id
(from a notification perspective) is in kwargs. Resulting from
trust_api.create_trust, using keywords
https://github.com/openstack/keystone/blob/master/keystone/trust/controllers.py#L171-L174

versus something like create_user in the identity_api that uses:
https://github.com/openstack/keystone/blob/master/keystone/identity/controllers.py#L146
no kwargs.

** Affects: keystone
     Importance: Undecided
         Status: New


** Tags: notifications

** Tags added: notifications

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

Title:
  Notifications wrapper doesn't work with Trusts Keystone resource

Status in OpenStack Identity (Keystone):
  New

Bug description:
  When implementing Keystone notifications for Trusts, an IndexError is
  returned saying 'tuple index out of range'.

  http://paste.openstack.org/show/61217/

  This causes notification to fail when creating trusts in Keystone. I
  believe the reason why args isn't "indexible" is because all the
  information about the trust is stored in kwargs, and the only element
  in args is an object (keystone.trusts.core.Manager).

  See the following paste for the pdb output (pdb.set_trace() placed
  here:
  https://github.com/openstack/keystone/blob/master/keystone/notifications.py#L48
  right before _send_notification()):

  http://paste.openstack.org/show/61218/

  args only has one thing in it, and the trust_id, or the resource_id
  (from a notification perspective) is in kwargs. Resulting from
  trust_api.create_trust, using keywords
  https://github.com/openstack/keystone/blob/master/keystone/trust/controllers.py#L171-L174

  versus something like create_user in the identity_api that uses:
  https://github.com/openstack/keystone/blob/master/keystone/identity/controllers.py#L146
  no kwargs.

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


Follow ups

References