summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--openstackclient/tests/unit/volume/v1/test_volume.py8
-rw-r--r--openstackclient/volume/v1/volume.py10
2 files changed, 16 insertions, 2 deletions
diff --git a/openstackclient/tests/unit/volume/v1/test_volume.py b/openstackclient/tests/unit/volume/v1/test_volume.py
index 704a66da..b8002d63 100644
--- a/openstackclient/tests/unit/volume/v1/test_volume.py
+++ b/openstackclient/tests/unit/volume/v1/test_volume.py
@@ -858,9 +858,10 @@ class TestVolumeList(TestVolume):
), )
self.assertItemsEqual(datalist, tuple(data))
- def test_volume_list_with_limit(self):
+ def test_volume_list_with_limit_and_offset(self):
arglist = [
'--limit', '2',
+ '--offset', '5',
]
verifylist = [
('long', False),
@@ -868,6 +869,7 @@ class TestVolumeList(TestVolume):
('name', None),
('status', None),
('limit', 2),
+ ('offset', 5),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -876,9 +878,11 @@ class TestVolumeList(TestVolume):
self.volumes_mock.list.assert_called_once_with(
limit=2,
search_opts={
+ 'offset': 5,
'status': None,
'display_name': None,
- 'all_tenants': False, }
+ 'all_tenants': False,
+ },
)
self.assertEqual(self.columns, columns)
self.assertItemsEqual(self.datalist, tuple(data))
diff --git a/openstackclient/volume/v1/volume.py b/openstackclient/volume/v1/volume.py
index 460bd85a..dfbb0c54 100644
--- a/openstackclient/volume/v1/volume.py
+++ b/openstackclient/volume/v1/volume.py
@@ -328,6 +328,13 @@ class ListVolume(command.Lister):
help=_('List additional fields in output'),
)
parser.add_argument(
+ '--offset',
+ type=int,
+ action=parseractions.NonNegativeAction,
+ metavar='<offset>',
+ help=_('Index from which to start listing volumes'),
+ )
+ parser.add_argument(
'--limit',
type=int,
action=parseractions.NonNegativeAction,
@@ -395,6 +402,9 @@ class ListVolume(command.Lister):
'status': parsed_args.status,
}
+ if parsed_args.offset:
+ search_opts['offset'] = parsed_args.offset
+
data = volume_client.volumes.list(
search_opts=search_opts,
limit=parsed_args.limit,