Merge "Support filter volumes by group_id"
This commit is contained in:
@@ -71,6 +71,18 @@ class ShellTest(utils.TestCase):
|
|||||||
# NOTE(jdg): we default to detail currently
|
# NOTE(jdg): we default to detail currently
|
||||||
self.assert_called('GET', '/volumes/detail')
|
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):
|
def test_list_availability_zone(self):
|
||||||
self.run_command('availability-zone-list')
|
self.run_command('availability-zone-list')
|
||||||
self.assert_called('GET', '/os-availability-zone')
|
self.assert_called('GET', '/os-availability-zone')
|
||||||
|
@@ -31,6 +31,11 @@ from cinderclient import utils
|
|||||||
from cinderclient.v2.shell import * # flake8: noqa
|
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',
|
@utils.arg('--all-tenants',
|
||||||
dest='all_tenants',
|
dest='all_tenants',
|
||||||
metavar='<0|1>',
|
metavar='<0|1>',
|
||||||
@@ -137,6 +142,7 @@ def do_list(cs, args):
|
|||||||
'glance_metadata': shell_utils.extract_metadata(args,
|
'glance_metadata': shell_utils.extract_metadata(args,
|
||||||
type='image_metadata')
|
type='image_metadata')
|
||||||
if args.image_metadata else None,
|
if args.image_metadata else None,
|
||||||
|
'group_id': getattr(args, 'group_id', None),
|
||||||
}
|
}
|
||||||
|
|
||||||
# If unavailable/non-existent fields are specified, these fields will
|
# If unavailable/non-existent fields are specified, these fields will
|
||||||
|
Reference in New Issue
Block a user