diff options
| author | Tang Chen <chen.tang@easystack.cn> | 2016-02-13 09:49:46 +0800 |
|---|---|---|
| committer | Tang Chen <chen.tang@easystack.cn> | 2016-02-19 11:00:33 +0800 |
| commit | a04012c3d50c3623c699f57d0dd320783b92e1cb (patch) | |
| tree | d26cb92b36bf20ecc921f0908619432473796cce /openstackclient/network | |
| parent | 444fc6149db58361e5329e3f05eb8f056fb7479a (diff) | |
| download | python-openstackclient-a04012c3d50c3623c699f57d0dd320783b92e1cb.tar.gz | |
Subnet Pool: Add "subnet pool list" command
Change-Id: I7935be2488fb728ced9680d75880870e5d315655
Closes-Bug: 1544589
Implements: blueprint neutron-client
Diffstat (limited to 'openstackclient/network')
| -rw-r--r-- | openstackclient/network/v2/subnet_pool.py | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/openstackclient/network/v2/subnet_pool.py b/openstackclient/network/v2/subnet_pool.py index 133e3e71..e82b2050 100644 --- a/openstackclient/network/v2/subnet_pool.py +++ b/openstackclient/network/v2/subnet_pool.py @@ -14,6 +14,7 @@ """Subnet pool action implementations""" from openstackclient.common import command +from openstackclient.common import utils class DeleteSubnetPool(command.Command): @@ -32,3 +33,53 @@ class DeleteSubnetPool(command.Command): client = self.app.client_manager.network obj = client.find_subnet_pool(parsed_args.subnet_pool) client.delete_subnet_pool(obj) + + +class ListSubnetPool(command.Lister): + """List subnet pools""" + + def get_parser(self, prog_name): + parser = super(ListSubnetPool, self).get_parser(prog_name) + parser.add_argument( + '--long', + action='store_true', + default=False, + help='List additional fields in output', + ) + return parser + + def take_action(self, parsed_args): + data = self.app.client_manager.network.subnet_pools() + + if parsed_args.long: + headers = ( + 'ID', + 'Name', + 'Prefixes', + 'Default Prefix Length', + 'Address Scope', + ) + columns = ( + 'id', + 'name', + 'prefixes', + 'default_prefixlen', + 'address_scope_id', + ) + else: + headers = ( + 'ID', + 'Name', + 'Prefixes', + ) + columns = ( + 'id', + 'name', + 'prefixes', + ) + + return (headers, + (utils.get_item_properties( + s, columns, + formatters={}, + ) for s in data)) |
