Always display direction for security group rules

The --long option is still accepted but is now ignored.

Change-Id: I23dd9fa7cff310ee9a62ce32b843b822b93b7548
Story: #2007323
This commit is contained in:
Sam Morrison 2020-02-25 12:52:01 +11:00
parent e07324e30f
commit e410e61d20
4 changed files with 29 additions and 15 deletions

View File

@ -480,7 +480,7 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
action='store_true',
default=False,
help=self.enhance_help_neutron(
_("List additional fields in output"))
_("**Deprecated** This argument is no longer needed"))
)
return parser
@ -510,15 +510,19 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
'Ethertype',
'IP Range',
'Port Range',
'Direction',
'Remote Security Group',
)
if parsed_args.long:
column_headers = column_headers + ('Direction',)
column_headers = column_headers + ('Remote Security Group',)
if parsed_args.group is None:
column_headers = column_headers + ('Security Group',)
return column_headers
def take_action_network(self, client, parsed_args):
if parsed_args.long:
self.log.warning(_(
"The --long option has been deprecated and is no longer needed"
))
column_headers = self._get_column_headers(parsed_args)
columns = (
'id',
@ -526,10 +530,9 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
'ether_type',
'remote_ip_prefix',
'port_range',
'direction',
'remote_group_id',
)
if parsed_args.long:
columns = columns + ('direction',)
columns = columns + ('remote_group_id',)
# Get the security group rules using the requested query.
query = {}

View File

@ -362,6 +362,7 @@ class TestListSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
'Ethertype',
'IP Range',
'Port Range',
'Direction',
'Remote Security Group',
)
expected_columns_no_group = \

View File

@ -870,7 +870,7 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
_security_group_rules = [_security_group_rule_tcp,
_security_group_rule_icmp]
expected_columns_with_group_and_long = (
expected_columns_with_group = (
'ID',
'IP Protocol',
'Ethertype',
@ -885,14 +885,15 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
'Ethertype',
'IP Range',
'Port Range',
'Direction',
'Remote Security Group',
'Security Group',
)
expected_data_with_group_and_long = []
expected_data_with_group = []
expected_data_no_group = []
for _security_group_rule in _security_group_rules:
expected_data_with_group_and_long.append((
expected_data_with_group.append((
_security_group_rule.id,
_security_group_rule.protocol,
_security_group_rule.ether_type,
@ -909,6 +910,7 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
_security_group_rule.remote_ip_prefix,
security_group_rule._format_network_port_range(
_security_group_rule),
_security_group_rule.direction,
_security_group_rule.remote_group_id,
_security_group_rule.security_group_id,
))
@ -935,14 +937,12 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
self.assertEqual(self.expected_columns_no_group, columns)
self.assertEqual(self.expected_data_no_group, list(data))
def test_list_with_group_and_long(self):
def test_list_with_group(self):
self._security_group_rule_tcp.port_range_min = 80
arglist = [
'--long',
self._security_group.id,
]
verifylist = [
('long', True),
('group', self._security_group.id),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@ -952,8 +952,8 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
self.network.security_group_rules.assert_called_once_with(**{
'security_group_id': self._security_group.id,
})
self.assertEqual(self.expected_columns_with_group_and_long, columns)
self.assertEqual(self.expected_data_with_group_and_long, list(data))
self.assertEqual(self.expected_columns_with_group, columns)
self.assertEqual(self.expected_data_with_group, list(data))
def test_list_with_ignored_options(self):
self._security_group_rule_tcp.port_range_min = 80

View File

@ -0,0 +1,10 @@
---
features:
- |
By default listing security group rules now shows the direction.
The ``--long`` argument is now redundant and is now ignored as it
was only used to display the direction.
deprecations:
- |
Deprecate the ``--long`` option for the ``security group list``
command. This is no longer needed to display all columns.