diff options
| author | Jenkins <jenkins@review.openstack.org> | 2014-04-23 23:11:48 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2014-04-23 23:11:48 +0000 |
| commit | 845f6705bf65725830b1a7bba22870f177668d86 (patch) | |
| tree | 88621faceaca26aa8f9d0047a9789d484375ae88 /openstackclient/identity | |
| parent | 8ec78a10f8ee35b607c4a7c0260de31178cdf5b0 (diff) | |
| parent | e72072adc3b62b5ef8e3076169fed19dea9995f7 (diff) | |
| download | python-openstackclient-845f6705bf65725830b1a7bba22870f177668d86.tar.gz | |
Merge "Fix the project option to user list so it filters"
Diffstat (limited to 'openstackclient/identity')
| -rw-r--r-- | openstackclient/identity/v2_0/user.py | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/openstackclient/identity/v2_0/user.py b/openstackclient/identity/v2_0/user.py index 628be4b8..688306ba 100644 --- a/openstackclient/identity/v2_0/user.py +++ b/openstackclient/identity/v2_0/user.py @@ -156,6 +156,7 @@ class ListUser(lister.Lister): def take_action(self, parsed_args): self.log.debug('take_action(%s)' % parsed_args) + identity_client = self.app.client_manager.identity def _format_project(project): if not project: @@ -165,6 +166,14 @@ class ListUser(lister.Lister): else: return project + project = None + if parsed_args.project: + project = utils.find_resource( + identity_client.tenants, + parsed_args.project, + ) + project = project.id + if parsed_args.long: columns = ( 'ID', @@ -183,14 +192,20 @@ class ListUser(lister.Lister): # Cache the project list project_cache = {} try: - for p in self.app.client_manager.identity.tenants.list(): + for p in identity_client.tenants.list(): project_cache[p.id] = p except Exception: # Just forget it if there's any trouble pass else: columns = column_headers = ('ID', 'Name') - data = self.app.client_manager.identity.users.list() + data = identity_client.users.list(tenant_id=project) + + if parsed_args.project: + d = {} + for s in data: + d[s.id] = s + data = d.values() if parsed_args.long: # FIXME(dtroyer): Sometimes user objects have 'tenant_id' instead |
