Skip to content

Instantly share code, notes, and snippets.

@bodepd
Created September 23, 2013 20:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bodepd/6676691 to your computer and use it in GitHub Desktop.
Save bodepd/6676691 to your computer and use it in GitHub Desktop.
diff --git a/lib/puppet/provider/keystone_user_role/keystone.rb b/lib/puppet/provider/keystone_user_role/keystone.r
index ac46d54..45cb6fc 100644
--- a/lib/puppet/provider/keystone_user_role/keystone.rb
+++ b/lib/puppet/provider/keystone_user_role/keystone.rb
@@ -50,7 +50,7 @@ Puppet::Type.type(:keystone_user_role).provide(
@user_hash ||= {}
@tenant_hash[tenant] = @tenant_hash[tenant] || get_tenants[tenant]
[
- get_users(@tenant_hash[tenant])[user],
+ get_user(@tenant_hash[tenant], user),
@tenant_hash[tenant]
]
end
@@ -174,6 +174,17 @@ Puppet::Type.type(:keystone_user_role).provide(
self.class.list_user_roles(user_id, tenant_id)
end
+ def self.get_user(tenant_id, name)
+ @users ||= {}
+ user_key = "#{name}@#{tenant_id}"
+ unless @users[user_key]
+ list_keystone_objects('user', 4, '--tenant-id', tenant_id).each do |user|
+ @users["#{user[1]}@#{tenant_id}"] = user[0]
+ end
+ end
+ @users[name]
+ end
+
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment