Support filter volumes by group_id
After v3.10, cinder support filter volumes by group_id, this patch support this feature for client side. Change-Id: Ie7df4d8b81789fd36ca6f91d96a477c88e8d5a52 Partial-Implements: blueprint improvement-to-query-consistency-group-detail
This commit is contained in:
		| @@ -71,6 +71,18 @@ class ShellTest(utils.TestCase): | ||||
|         # NOTE(jdg): we default to detail currently | ||||
|         self.assert_called('GET', '/volumes/detail') | ||||
|  | ||||
|     def test_list_with_group_id_before_3_10(self): | ||||
|         self.assertRaises(exceptions.UnsupportedAttribute, | ||||
|                           self.run_command, | ||||
|                           'list --group_id fake_id') | ||||
|  | ||||
|     @ddt.data("3.10", "3.11") | ||||
|     def test_list_with_group_id_after_3_10(self, version): | ||||
|         command = ('--os-volume-api-version %s list --group_id fake_id' % | ||||
|                    version) | ||||
|         self.run_command(command) | ||||
|         self.assert_called('GET', '/volumes/detail?group_id=fake_id') | ||||
|  | ||||
|     def test_list_availability_zone(self): | ||||
|         self.run_command('availability-zone-list') | ||||
|         self.assert_called('GET', '/os-availability-zone') | ||||
|   | ||||
| @@ -31,6 +31,11 @@ from cinderclient import utils | ||||
| from cinderclient.v2.shell import *  # flake8: noqa | ||||
|  | ||||
|  | ||||
| @utils.arg('--group_id', | ||||
|            metavar='<group_id>', | ||||
|            default=None, | ||||
|            help='Filters results by a group_id. Default=None.', | ||||
|            start_version='3.10') | ||||
| @utils.arg('--all-tenants', | ||||
|            dest='all_tenants', | ||||
|            metavar='<0|1>', | ||||
| @@ -137,6 +142,7 @@ def do_list(cs, args): | ||||
|         'glance_metadata': shell_utils.extract_metadata(args, | ||||
|                                                         type='image_metadata') | ||||
|         if args.image_metadata else None, | ||||
|         'group_id': getattr(args, 'group_id', None), | ||||
|     } | ||||
|  | ||||
|     # If unavailable/non-existent fields are specified, these fields will | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 wangxiyuan
					wangxiyuan