summaryrefslogtreecommitdiff
path: root/openstackclient
diff options
context:
space:
mode:
authorRodolfo Alonso Hernandez <ralonsoh@redhat.com>2023-03-28 13:05:54 +0200
committerRodolfo Alonso Hernandez <ralonsoh@redhat.com>2023-03-28 18:18:49 +0200
commitf1cf3a10b5f0fcf13e57b8df7e139db2b0ebb760 (patch)
treecf71b437aca63f2cc2040b2463669b809d1e1a39 /openstackclient
parent65b667af2033303beee74e9241400f5bf5817899 (diff)
downloadpython-openstackclient-f1cf3a10b5f0fcf13e57b8df7e139db2b0ebb760.tar.gz
Show Network QoS rules one per line
The command "network show qos policy <qos>" now shows the QoS rules printed one per line. Example: https://paste.opendev.org/show/bgam6amfLUVheAMhDxB3/ Change-Id: I65a99da16056902a822804e29b2dd9376a72e091
Diffstat (limited to 'openstackclient')
-rw-r--r--openstackclient/network/v2/network_qos_policy.py13
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_qos_policy.py2
2 files changed, 13 insertions, 2 deletions
diff --git a/openstackclient/network/v2/network_qos_policy.py b/openstackclient/network/v2/network_qos_policy.py
index d77e5db9..29967d7d 100644
--- a/openstackclient/network/v2/network_qos_policy.py
+++ b/openstackclient/network/v2/network_qos_policy.py
@@ -15,6 +15,7 @@
import logging
+from cliff import columns as cliff_columns
from osc_lib.command import command
from osc_lib import exceptions
from osc_lib import utils
@@ -26,6 +27,16 @@ from openstackclient.network import common
LOG = logging.getLogger(__name__)
+class RulesColumn(cliff_columns.FormattableColumn):
+ def human_readable(self):
+ return '\n'.join(str(v) for v in self._value)
+
+
+_formatters = {
+ 'rules': RulesColumn,
+}
+
+
def _get_columns(item):
column_map = {
'is_shared': 'shared',
@@ -287,5 +298,5 @@ class ShowNetworkQosPolicy(command.ShowOne):
obj = client.find_qos_policy(parsed_args.policy,
ignore_missing=False)
display_columns, columns = _get_columns(obj)
- data = utils.get_item_properties(obj, columns)
+ data = utils.get_item_properties(obj, columns, formatters=_formatters)
return (display_columns, data)
diff --git a/openstackclient/tests/unit/network/v2/test_network_qos_policy.py b/openstackclient/tests/unit/network/v2/test_network_qos_policy.py
index af4cb3fb..ca21ccf7 100644
--- a/openstackclient/tests/unit/network/v2/test_network_qos_policy.py
+++ b/openstackclient/tests/unit/network/v2/test_network_qos_policy.py
@@ -432,7 +432,7 @@ class TestShowNetworkQosPolicy(TestQosPolicy):
_qos_policy.is_default,
_qos_policy.name,
_qos_policy.project_id,
- _qos_policy.rules,
+ network_qos_policy.RulesColumn(_qos_policy.rules),
_qos_policy.shared,
)