diff options
author | Jenkins <jenkins@review.openstack.org> | 2016-02-29 22:47:42 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2016-02-29 22:47:42 +0000 |
commit | 64cde9f7f7f465f96926926eaea57e4072284ce0 (patch) | |
tree | bd104c67cb2b8aceccc09b42d2e1ed017c00be51 | |
parent | e4692518b4e6626814d6ae22f99efedf691d34c5 (diff) | |
parent | 20c0421857139a49a466c8a03019bdbfd4957d20 (diff) | |
download | python-cinderclient-64cde9f7f7f465f96926926eaea57e4072284ce0.tar.gz |
Merge "snapshot-list now supports filtering by tenant"
-rw-r--r-- | cinderclient/tests/unit/v2/test_shell.py | 10 | ||||
-rw-r--r-- | cinderclient/v2/shell.py | 10 |
2 files changed, 19 insertions, 1 deletions
diff --git a/cinderclient/tests/unit/v2/test_shell.py b/cinderclient/tests/unit/v2/test_shell.py index deddff0..ba3511e 100644 --- a/cinderclient/tests/unit/v2/test_shell.py +++ b/cinderclient/tests/unit/v2/test_shell.py @@ -475,6 +475,16 @@ class ShellTest(utils.TestCase): mock_print_list.assert_called_once_with(mock.ANY, columns, sortby_index=None) + def test_snapshot_list_filter_tenant_with_all_tenants(self): + self.run_command('snapshot-list --all-tenants=1 --tenant 123') + self.assert_called('GET', + '/snapshots/detail?all_tenants=1&project_id=123') + + def test_snapshot_list_filter_tenant_without_all_tenants(self): + self.run_command('snapshot-list --tenant 123') + self.assert_called('GET', + '/snapshots/detail?all_tenants=1&project_id=123') + def test_rename(self): # basic rename with positional arguments self.run_command('rename 1234 new-name') diff --git a/cinderclient/v2/shell.py b/cinderclient/v2/shell.py index fd88d92..a73fd5b 100644 --- a/cinderclient/v2/shell.py +++ b/cinderclient/v2/shell.py @@ -665,10 +665,17 @@ def do_image_metadata(cs, args): 'form of <key>[:<asc|desc>]. ' 'Valid keys: %s. ' 'Default=None.') % ', '.join(base.SORT_KEY_VALUES))) +@utils.arg('--tenant', + type=str, + dest='tenant', + nargs='?', + metavar='<tenant>', + help='Display information from single tenant (Admin only).') @utils.service_type('volumev2') def do_snapshot_list(cs, args): """Lists all snapshots.""" - all_tenants = int(os.environ.get("ALL_TENANTS", args.all_tenants)) + all_tenants = (1 if args.tenant else + int(os.environ.get("ALL_TENANTS", args.all_tenants))) if args.display_name is not None: args.name = args.display_name @@ -678,6 +685,7 @@ def do_snapshot_list(cs, args): 'display_name': args.name, 'status': args.status, 'volume_id': args.volume_id, + 'project_id': args.tenant, } snapshots = cs.volume_snapshots.list(search_opts=search_opts, |