Role NoneType object has no attribute setdefault
Havana Keystone configured with LDAP. When you try to update a role using the API: curl -X PATCH --insecure -H "X-Auth-Token:the_token" -H "Content-type: application/json" -d '{"role": {"name": "the new name"}}' https://localhost:35357/v3/roles/role_id Keystone server raises an error: {"error": {"message": "An unexpected error prevented the server from fulfilling your request. 'NoneType' object has no attribute 'setdefault'", "code": 500, "title": "Internal Server Error"}} The role information is updated, but keystone server raises that error. Closes-Bug: #1247830 Change-Id: I686e40e42371f6e2cea55110554456a33939799c
This commit is contained in:
parent
2ab2c62435
commit
24da79bded
@ -192,7 +192,7 @@ class Assignment(assignment.Driver):
|
|||||||
|
|
||||||
def update_role(self, role_id, role):
|
def update_role(self, role_id, role):
|
||||||
self.get_role(role_id)
|
self.get_role(role_id)
|
||||||
self.role.update(role_id, role)
|
return self.role.update(role_id, role)
|
||||||
|
|
||||||
def create_domain(self, domain_id, domain):
|
def create_domain(self, domain_id, domain):
|
||||||
if domain_id == CONF.identity.default_domain_id:
|
if domain_id == CONF.identity.default_domain_id:
|
||||||
|
@ -1511,10 +1511,11 @@ class IdentityTests(object):
|
|||||||
self.assertDictEqual(role_ref_dict, role)
|
self.assertDictEqual(role_ref_dict, role)
|
||||||
|
|
||||||
role['name'] = uuid.uuid4().hex
|
role['name'] = uuid.uuid4().hex
|
||||||
self.assignment_api.update_role(role['id'], role)
|
updated_role_ref = self.assignment_api.update_role(role['id'], role)
|
||||||
role_ref = self.assignment_api.get_role(role['id'])
|
role_ref = self.assignment_api.get_role(role['id'])
|
||||||
role_ref_dict = dict((x, role_ref[x]) for x in role_ref)
|
role_ref_dict = dict((x, role_ref[x]) for x in role_ref)
|
||||||
self.assertDictEqual(role_ref_dict, role)
|
self.assertDictEqual(role_ref_dict, role)
|
||||||
|
self.assertDictEqual(role_ref_dict, updated_role_ref)
|
||||||
|
|
||||||
self.assignment_api.delete_role(role['id'])
|
self.assignment_api.delete_role(role['id'])
|
||||||
self.assertRaises(exception.RoleNotFound,
|
self.assertRaises(exception.RoleNotFound,
|
||||||
|
Loading…
Reference in New Issue
Block a user