summaryrefslogtreecommitdiff
path: root/openstackclient
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2021-03-03 17:03:02 +0000
committerGerrit Code Review <review@openstack.org>2021-03-03 17:03:02 +0000
commit1c84b44ac2a2c4dd2fd59cbce35698ca5d91d718 (patch)
treef7d3bbd5c0da1247d4faee295c461cb657495cfe /openstackclient
parent2732ed3fe083e8099664081f8cafcbf663865448 (diff)
parent16c72f8642c24e4e2d8af93698a84aced54be97a (diff)
downloadpython-openstackclient-1c84b44ac2a2c4dd2fd59cbce35698ca5d91d718.tar.gz
Merge "Add --name to port list"
Diffstat (limited to 'openstackclient')
-rw-r--r--openstackclient/network/v2/port.py7
-rw-r--r--openstackclient/tests/unit/network/v2/test_port.py20
2 files changed, 27 insertions, 0 deletions
diff --git a/openstackclient/network/v2/port.py b/openstackclient/network/v2/port.py
index dfdb604d..6885e147 100644
--- a/openstackclient/network/v2/port.py
+++ b/openstackclient/network/v2/port.py
@@ -600,6 +600,11 @@ class ListPort(command.Lister):
metavar='<project>',
help=_("List ports according to their project (name or ID)")
)
+ parser.add_argument(
+ '--name',
+ metavar='<name>',
+ help=_("List ports according to their name")
+ )
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
'--fixed-ip',
@@ -667,6 +672,8 @@ class ListPort(command.Lister):
).id
filters['tenant_id'] = project_id
filters['project_id'] = project_id
+ if parsed_args.name:
+ filters['name'] = parsed_args.name
if parsed_args.fixed_ip:
filters['fixed_ips'] = _prepare_filter_fixed_ips(
self.app.client_manager, parsed_args)
diff --git a/openstackclient/tests/unit/network/v2/test_port.py b/openstackclient/tests/unit/network/v2/test_port.py
index c8bced71..8c5158d7 100644
--- a/openstackclient/tests/unit/network/v2/test_port.py
+++ b/openstackclient/tests/unit/network/v2/test_port.py
@@ -1250,6 +1250,26 @@ class TestListPort(TestPort):
self.assertEqual(self.columns, columns)
self.assertItemsEqual(self.data, list(data))
+ def test_port_list_name(self):
+ test_name = "fakename"
+ arglist = [
+ '--name', test_name,
+ ]
+ verifylist = [
+ ('name', test_name),
+ ]
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
+
+ columns, data = self.cmd.take_action(parsed_args)
+ filters = {
+ 'name': test_name,
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+
+ self.network.ports.assert_called_once_with(**filters)
+ self.assertEqual(self.columns, columns)
+ self.assertItemsEqual(self.data, list(data))
+
def test_list_with_tag_options(self):
arglist = [
'--tags', 'red,blue',