diff options
| author | Yi Zhao <zhaoyi@cmss.chinamobile.com> | 2016-10-31 16:47:30 +0800 |
|---|---|---|
| committer | Yi Zhao <zhaoyi@cmss.chinamobile.com> | 2016-10-31 16:54:08 +0800 |
| commit | 84beac59948629be9ea065386c5b5bc330d2c609 (patch) | |
| tree | c1a045f79365106b03e0fd03f071bc6234fab373 /openstackclient/network | |
| parent | 8ca1cc637013972491744b8318d30e9256bc4165 (diff) | |
| download | python-openstackclient-84beac59948629be9ea065386c5b5bc330d2c609.tar.gz | |
Add filtering options --name,--enable,--disable to router list
Change-Id: I171b6be4501b02c3df66589c45177200919117db
Closes-Bug: #1637945
Partially-Implements: blueprint network-commands-options
Diffstat (limited to 'openstackclient/network')
| -rw-r--r-- | openstackclient/network/v2/router.py | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/openstackclient/network/v2/router.py b/openstackclient/network/v2/router.py index 193bf6e9..d96c314a 100644 --- a/openstackclient/network/v2/router.py +++ b/openstackclient/network/v2/router.py @@ -261,6 +261,22 @@ class ListRouter(command.Lister): def get_parser(self, prog_name): parser = super(ListRouter, self).get_parser(prog_name) parser.add_argument( + '--name', + metavar='<name>', + help=_("List routers according to their name") + ) + admin_state_group = parser.add_mutually_exclusive_group() + admin_state_group.add_argument( + '--enable', + action='store_true', + help=_("List enabled routers") + ) + admin_state_group.add_argument( + '--disable', + action='store_true', + help=_("List disabled routers") + ) + parser.add_argument( '--long', action='store_true', default=False, @@ -289,6 +305,17 @@ class ListRouter(command.Lister): 'HA', 'Project', ) + + args = {} + + if parsed_args.name is not None: + args['name'] = parsed_args.name + + if parsed_args.enable: + args['admin_state_up'] = True + elif parsed_args.disable: + args['admin_state_up'] = False + if parsed_args.long: columns = columns + ( 'routes', @@ -308,7 +335,7 @@ class ListRouter(command.Lister): 'Availability zones', ) - data = client.routers() + data = client.routers(**args) return (column_headers, (utils.get_item_properties( s, columns, |
