Enabled like filter support in client

Updated the help message to advertise we support
filter resource by inexact match since 3.34.

Depends-On: 93b1c1134931749f77c5b3c7bb0f92936b3124e4
Change-Id: I8ea0eb3f0c693c6a2adce33e4d74b2327f124d40
This commit is contained in:
TommyLike 2017-05-19 11:30:40 +08:00
parent 44e650a4ed
commit 4082478986
3 changed files with 57 additions and 7 deletions

View File

@ -95,6 +95,10 @@ class ShellTest(utils.TestCase):
'list --filters metadata={key1:value1}',
'expected':
'/volumes/detail?metadata=%7B%27key1%27%3A+%27value1%27%7D'},
{'command':
'list --filters name~=456',
'expected':
'/volumes/detail?name%7E=456'},
# testcases for list group
{'command':
'group-list --filters name=456',
@ -104,6 +108,10 @@ class ShellTest(utils.TestCase):
'group-list --filters status=available',
'expected':
'/groups/detail?status=available'},
{'command':
'group-list --filters name~=456',
'expected':
'/groups/detail?name%7E=456'},
# testcases for list group-snapshot
{'command':
'group-snapshot-list --status=error --filters status=available',
@ -113,6 +121,10 @@ class ShellTest(utils.TestCase):
'group-snapshot-list --filters availability_zone=123',
'expected':
'/group_snapshots/detail?availability_zone=123'},
{'command':
'group-snapshot-list --filters status~=available',
'expected':
'/group_snapshots/detail?status%7E=available'},
# testcases for list message
{'command':
'message-list --event_id=123 --filters event_id=456',
@ -122,6 +134,10 @@ class ShellTest(utils.TestCase):
'message-list --filters request_id=123',
'expected':
'/messages?request_id=123'},
{'command':
'message-list --filters request_id~=123',
'expected':
'/messages?request_id%7E=123'},
# testcases for list attachment
{'command':
'attachment-list --volume-id=123 --filters volume_id=456',
@ -131,6 +147,10 @@ class ShellTest(utils.TestCase):
'attachment-list --filters mountpoint=123',
'expected':
'/attachments?mountpoint=123'},
{'command':
'attachment-list --filters volume_id~=456',
'expected':
'/attachments?volume_id%7E=456'},
# testcases for list backup
{'command':
'backup-list --volume-id=123 --filters volume_id=456',
@ -140,6 +160,10 @@ class ShellTest(utils.TestCase):
'backup-list --filters name=123',
'expected':
'/backups/detail?name=123'},
{'command':
'backup-list --filters volume_id~=456',
'expected':
'/backups/detail?volume_id%7E=456'},
# testcases for list snapshot
{'command':
'snapshot-list --volume-id=123 --filters volume_id=456',
@ -149,6 +173,10 @@ class ShellTest(utils.TestCase):
'snapshot-list --filters name=123',
'expected':
'/snapshots/detail?name=123'},
{'command':
'snapshot-list --filters volume_id~=456',
'expected':
'/snapshots/detail?volume_id%7E=456'},
# testcases for get pools
{'command':
'get-pools --filters name=456 --detail',

View File

@ -43,6 +43,10 @@ FILTER_DEPRECATED = ("This option is deprecated and will be removed in "
default=None,
help='Show enabled filters for specified resource. Default=None.')
def do_list_filters(cs, args):
"""List enabled filters.
Symbol '~' after filter key means it supports inexact filtering.
"""
filters = cs.resource_filters.list(resource=args.resource)
shell_utils.print_resource_filter_list(filters)
@ -100,7 +104,8 @@ def do_list_filters(cs, args):
metavar='<key=value>',
default=None,
help="Filter key and value pairs. Please use 'cinder list-filters' "
"to check enabled filters from server, Default=None.")
"to check enabled filters from server. Use 'key~=value' for "
"inexact filtering if the key supports. Default=None.")
def do_backup_list(cs, args):
"""Lists all backups."""
# pylint: disable=function-redefined
@ -274,7 +279,8 @@ RESET_STATE_RESOURCES = {'volume': utils.find_volume,
metavar='<key=value>',
default=None,
help="Filter key and value pairs. Please use 'cinder list-filters' "
"to check enabled filters from server, Default=None.")
"to check enabled filters from server. Use 'key~=value' "
"for inexact filtering if the key supports. Default=None.")
def do_list(cs, args):
"""Lists all volumes."""
# pylint: disable=function-redefined
@ -976,7 +982,8 @@ def do_manageable_list(cs, args):
metavar='<key=value>',
default=None,
help="Filter key and value pairs. Please use 'cinder list-filters' "
"to check enabled filters from server, Default=None.")
"to check enabled filters from server. Use 'key~=value' "
"for inexact filtering if the key supports. Default=None.")
def do_group_list(cs, args):
"""Lists all groups."""
search_opts = {'all_tenants': args.all_tenants}
@ -1178,7 +1185,8 @@ def do_group_update(cs, args):
metavar='<key=value>',
default=None,
help="Filter key and value pairs. Please use 'cinder list-filters' "
"to check enabled filters from server, Default=None.")
"to check enabled filters from server. Use 'key~=value' "
"for inexact filtering if the key supports. Default=None.")
def do_group_snapshot_list(cs, args):
"""Lists all group snapshots."""
@ -1403,7 +1411,8 @@ def do_api_version(cs, args):
metavar='<key=value>',
default=None,
help="Filter key and value pairs. Please use 'cinder list-filters' "
"to check enabled filters from server, Default=None.")
"to check enabled filters from server. Use 'key~=value' "
"for inexact filtering if the key supports. Default=None.")
def do_message_list(cs, args):
"""Lists all messages."""
search_opts = {
@ -1540,7 +1549,8 @@ def do_message_delete(cs, args):
metavar='<key=value>',
default=None,
help="Filter key and value pairs. Please use 'cinder list-filters' "
"to check enabled filters from server, Default=None.")
"to check enabled filters from server. Use 'key~=value' "
"for inexact filtering if the key supports. Default=None.")
def do_snapshot_list(cs, args):
"""Lists all snapshots."""
# pylint: disable=function-redefined
@ -1630,7 +1640,8 @@ def do_snapshot_list(cs, args):
metavar='<key=value>',
default=None,
help="Filter key and value pairs. Please use 'cinder list-filters' "
"to check enabled filters from server, Default=None.")
"to check enabled filters from server. Use 'key~=value' "
"for inexact filtering if the key supports. Default=None.")
def do_attachment_list(cs, args):
"""Lists all attachments."""
search_opts = {

View File

@ -0,0 +1,11 @@
---
features:
- |
Enabled like filter support in these list commands.
- list
- snapshot-list
- backup-list
- group-list
- group-snapshot-list
- attachment-list
- message-list