osc: Use FormattableColumn for formatter
... because usage of legacy format function was deprecated 8 years ago and was recently removed from osc-lib[1]. [1] 0e7dada02b825b2f97ac3eb68544bdd438a3a099 Change-Id: I6f04160cb79fbe081ece8d3893d1108919c241b0
This commit is contained in:
@@ -87,7 +87,7 @@ class ListAmphora(lister.Lister):
|
|||||||
data = self.app.client_manager.load_balancer.amphora_list(**attrs)
|
data = self.app.client_manager.load_balancer.amphora_list(**attrs)
|
||||||
|
|
||||||
formatters = {
|
formatters = {
|
||||||
'amphorae': v2_utils.format_list,
|
'amphorae': v2_utils.ListColumn,
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -121,8 +121,8 @@ class ShowAmphora(command.ShowOne):
|
|||||||
|
|
||||||
rows = const.AMPHORA_ROWS
|
rows = const.AMPHORA_ROWS
|
||||||
formatters = {
|
formatters = {
|
||||||
'loadbalancers': v2_utils.format_list,
|
'loadbalancers': v2_utils.ListColumn,
|
||||||
'amphorae': v2_utils.format_list,
|
'amphorae': v2_utils.ListColumn,
|
||||||
}
|
}
|
||||||
|
|
||||||
return (rows, utils.get_dict_properties(data, rows,
|
return (rows, utils.get_dict_properties(data, rows,
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ class CreateAvailabilityzone(command.ShowOne):
|
|||||||
data = self.app.client_manager.load_balancer.availabilityzone_create(
|
data = self.app.client_manager.load_balancer.availabilityzone_create(
|
||||||
json=body)
|
json=body)
|
||||||
|
|
||||||
formatters = {'availability_zone_profiles': v2_utils.format_list}
|
formatters = {'availability_zone_profiles': v2_utils.ListColumn}
|
||||||
|
|
||||||
return (rows,
|
return (rows,
|
||||||
(utils.get_dict_properties(
|
(utils.get_dict_properties(
|
||||||
@@ -140,7 +140,7 @@ class ListAvailabilityzone(lister.Lister):
|
|||||||
parsed_args)
|
parsed_args)
|
||||||
data = self.app.client_manager.load_balancer.availabilityzone_list(
|
data = self.app.client_manager.load_balancer.availabilityzone_list(
|
||||||
**attrs)
|
**attrs)
|
||||||
formatters = {'availabilityzoneprofiles': v2_utils.format_list}
|
formatters = {'availabilityzoneprofiles': v2_utils.ListColumn}
|
||||||
return (columns,
|
return (columns,
|
||||||
(utils.get_dict_properties(s, columns, formatters=formatters)
|
(utils.get_dict_properties(s, columns, formatters=formatters)
|
||||||
for s in data['availability_zones']))
|
for s in data['availability_zones']))
|
||||||
@@ -169,7 +169,7 @@ class ShowAvailabilityzone(command.ShowOne):
|
|||||||
data = self.app.client_manager.load_balancer.availabilityzone_show(
|
data = self.app.client_manager.load_balancer.availabilityzone_show(
|
||||||
availabilityzone_name=availabilityzone_name
|
availabilityzone_name=availabilityzone_name
|
||||||
)
|
)
|
||||||
formatters = {'availabilityzoneprofiles': v2_utils.format_list}
|
formatters = {'availabilityzoneprofiles': v2_utils.ListColumn}
|
||||||
|
|
||||||
return (rows, (utils.get_dict_properties(
|
return (rows, (utils.get_dict_properties(
|
||||||
data, rows, formatters=formatters)))
|
data, rows, formatters=formatters)))
|
||||||
|
|||||||
@@ -74,7 +74,7 @@ class CreateFlavor(command.ShowOne):
|
|||||||
data = self.app.client_manager.load_balancer.flavor_create(
|
data = self.app.client_manager.load_balancer.flavor_create(
|
||||||
json=body)
|
json=body)
|
||||||
|
|
||||||
formatters = {'flavorprofiles': v2_utils.format_list}
|
formatters = {'flavorprofiles': v2_utils.ListColumn}
|
||||||
|
|
||||||
return (rows,
|
return (rows,
|
||||||
(utils.get_dict_properties(
|
(utils.get_dict_properties(
|
||||||
@@ -142,7 +142,7 @@ class ListFlavor(lister.Lister):
|
|||||||
parsed_args)
|
parsed_args)
|
||||||
data = self.app.client_manager.load_balancer.flavor_list(
|
data = self.app.client_manager.load_balancer.flavor_list(
|
||||||
**attrs)
|
**attrs)
|
||||||
formatters = {'flavorprofiles': v2_utils.format_list}
|
formatters = {'flavorprofiles': v2_utils.ListColumn}
|
||||||
return (columns,
|
return (columns,
|
||||||
(utils.get_dict_properties(s, columns, formatters=formatters)
|
(utils.get_dict_properties(s, columns, formatters=formatters)
|
||||||
for s in data['flavors']))
|
for s in data['flavors']))
|
||||||
@@ -179,7 +179,7 @@ class ShowFlavor(command.ShowOne):
|
|||||||
data = self.app.client_manager.load_balancer.flavor_show(
|
data = self.app.client_manager.load_balancer.flavor_show(
|
||||||
flavor_id=flavor_id
|
flavor_id=flavor_id
|
||||||
)
|
)
|
||||||
formatters = {'flavorprofiles': v2_utils.format_list}
|
formatters = {'flavorprofiles': v2_utils.ListColumn}
|
||||||
|
|
||||||
return (rows, (utils.get_dict_properties(
|
return (rows, (utils.get_dict_properties(
|
||||||
data, rows, formatters=formatters)))
|
data, rows, formatters=formatters)))
|
||||||
|
|||||||
@@ -168,8 +168,8 @@ class CreateHealthMonitor(command.ShowOne):
|
|||||||
data['healthmonitor']['id']))
|
data['healthmonitor']['id']))
|
||||||
}
|
}
|
||||||
|
|
||||||
formatters = {'pools': v2_utils.format_list,
|
formatters = {'pools': v2_utils.ListColumn,
|
||||||
'tags': v2_utils.format_list_flat}
|
'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return (rows,
|
return (rows,
|
||||||
(utils.get_dict_properties(data['healthmonitor'],
|
(utils.get_dict_properties(data['healthmonitor'],
|
||||||
@@ -230,7 +230,7 @@ class ListHealthMonitor(lister.Lister):
|
|||||||
data = self.app.client_manager.load_balancer.health_monitor_list(
|
data = self.app.client_manager.load_balancer.health_monitor_list(
|
||||||
**attrs)
|
**attrs)
|
||||||
|
|
||||||
formatters = {'pools': v2_utils.format_list}
|
formatters = {'pools': v2_utils.ListColumn}
|
||||||
return (columns,
|
return (columns,
|
||||||
(utils.get_dict_properties(s, columns, formatters=formatters)
|
(utils.get_dict_properties(s, columns, formatters=formatters)
|
||||||
for s in data['healthmonitors']))
|
for s in data['healthmonitors']))
|
||||||
@@ -269,8 +269,8 @@ class ShowHealthMonitor(command.ShowOne):
|
|||||||
data = self.app.client_manager.load_balancer.health_monitor_show(
|
data = self.app.client_manager.load_balancer.health_monitor_show(
|
||||||
health_monitor_id=health_monitor_id,
|
health_monitor_id=health_monitor_id,
|
||||||
)
|
)
|
||||||
formatters = {'pools': v2_utils.format_list,
|
formatters = {'pools': v2_utils.ListColumn,
|
||||||
'tags': v2_utils.format_list_flat}
|
'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return (rows,
|
return (rows,
|
||||||
(utils.get_dict_properties(data, rows, formatters=formatters)))
|
(utils.get_dict_properties(data, rows, formatters=formatters)))
|
||||||
|
|||||||
@@ -142,8 +142,8 @@ class CreateL7Policy(command.ShowOne):
|
|||||||
data['l7policy']['id']))
|
data['l7policy']['id']))
|
||||||
}
|
}
|
||||||
|
|
||||||
formatters = {'rules': v2_utils.format_list,
|
formatters = {'rules': v2_utils.ListColumn,
|
||||||
'tags': v2_utils.format_list_flat}
|
'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return (rows, (utils.get_dict_properties(
|
return (rows, (utils.get_dict_properties(
|
||||||
data['l7policy'], rows, formatters=formatters)))
|
data['l7policy'], rows, formatters=formatters)))
|
||||||
@@ -208,7 +208,7 @@ class ListL7Policy(lister.Lister):
|
|||||||
parsed_args)
|
parsed_args)
|
||||||
|
|
||||||
data = self.app.client_manager.load_balancer.l7policy_list(**attrs)
|
data = self.app.client_manager.load_balancer.l7policy_list(**attrs)
|
||||||
formatters = {'rules': v2_utils.format_list}
|
formatters = {'rules': v2_utils.ListColumn}
|
||||||
|
|
||||||
return (columns,
|
return (columns,
|
||||||
(utils.get_dict_properties(
|
(utils.get_dict_properties(
|
||||||
@@ -248,8 +248,8 @@ class ShowL7Policy(command.ShowOne):
|
|||||||
data = self.app.client_manager.load_balancer.l7policy_show(
|
data = self.app.client_manager.load_balancer.l7policy_show(
|
||||||
l7policy_id=l7policy_id,
|
l7policy_id=l7policy_id,
|
||||||
)
|
)
|
||||||
formatters = {'rules': v2_utils.format_list,
|
formatters = {'rules': v2_utils.ListColumn,
|
||||||
'tags': v2_utils.format_list_flat}
|
'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return (rows, (utils.get_dict_properties(
|
return (rows, (utils.get_dict_properties(
|
||||||
data, rows, formatters=formatters)))
|
data, rows, formatters=formatters)))
|
||||||
|
|||||||
@@ -130,7 +130,7 @@ class CreateL7Rule(command.ShowOne):
|
|||||||
l7policy_id, data['rule']['id']))
|
l7policy_id, data['rule']['id']))
|
||||||
}
|
}
|
||||||
|
|
||||||
formatters = {'tags': v2_utils.format_list_flat}
|
formatters = {'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return (rows, (utils.get_dict_properties(
|
return (rows, (utils.get_dict_properties(
|
||||||
data['rule'], rows, formatters=formatters)))
|
data['rule'], rows, formatters=formatters)))
|
||||||
@@ -245,7 +245,7 @@ class ShowL7Rule(command.ShowOne):
|
|||||||
l7rule_id=attrs['l7rule_id'],
|
l7rule_id=attrs['l7rule_id'],
|
||||||
l7policy_id=attrs['l7policy_id']
|
l7policy_id=attrs['l7policy_id']
|
||||||
)
|
)
|
||||||
formatters = {'tags': v2_utils.format_list_flat}
|
formatters = {'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return (rows, (utils.get_dict_properties(
|
return (rows, (utils.get_dict_properties(
|
||||||
data, rows, formatters=formatters)))
|
data, rows, formatters=formatters)))
|
||||||
|
|||||||
@@ -258,12 +258,12 @@ class CreateListener(command.ShowOne):
|
|||||||
data['listener']['id']))
|
data['listener']['id']))
|
||||||
}
|
}
|
||||||
|
|
||||||
formatters = {'loadbalancers': v2_utils.format_list,
|
formatters = {'loadbalancers': v2_utils.ListColumn,
|
||||||
'pools': v2_utils.format_list,
|
'pools': v2_utils.ListColumn,
|
||||||
'l7policies': v2_utils.format_list,
|
'l7policies': v2_utils.ListColumn,
|
||||||
'insert_headers': v2_utils.format_hash,
|
'insert_headers': v2_utils.HashColumn,
|
||||||
'allowed_cidrs': v2_utils.format_list_flat,
|
'allowed_cidrs': v2_utils.FlatListColumn,
|
||||||
'tags': v2_utils.format_list_flat}
|
'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return (rows,
|
return (rows,
|
||||||
(utils.get_dict_properties(data['listener'],
|
(utils.get_dict_properties(data['listener'],
|
||||||
@@ -352,7 +352,7 @@ class ListListener(lister.Lister):
|
|||||||
attrs = v2_utils.get_listener_attrs(self.app.client_manager,
|
attrs = v2_utils.get_listener_attrs(self.app.client_manager,
|
||||||
parsed_args)
|
parsed_args)
|
||||||
data = self.app.client_manager.load_balancer.listener_list(**attrs)
|
data = self.app.client_manager.load_balancer.listener_list(**attrs)
|
||||||
formatters = {'loadbalancers': v2_utils.format_list}
|
formatters = {'loadbalancers': v2_utils.ListColumn}
|
||||||
return (columns,
|
return (columns,
|
||||||
(utils.get_dict_properties(s, columns, formatters=formatters)
|
(utils.get_dict_properties(s, columns, formatters=formatters)
|
||||||
for s in data['listeners']))
|
for s in data['listeners']))
|
||||||
@@ -390,12 +390,12 @@ class ShowListener(command.ShowOne):
|
|||||||
data = self.app.client_manager.load_balancer.listener_show(
|
data = self.app.client_manager.load_balancer.listener_show(
|
||||||
listener_id=listener_id,
|
listener_id=listener_id,
|
||||||
)
|
)
|
||||||
formatters = {'loadbalancers': v2_utils.format_list,
|
formatters = {'loadbalancers': v2_utils.ListColumn,
|
||||||
'pools': v2_utils.format_list,
|
'pools': v2_utils.ListColumn,
|
||||||
'l7policies': v2_utils.format_list,
|
'l7policies': v2_utils.ListColumn,
|
||||||
'insert_headers': v2_utils.format_hash,
|
'insert_headers': v2_utils.HashColumn,
|
||||||
'allowed_cidrs': v2_utils.format_list_flat,
|
'allowed_cidrs': v2_utils.FlatListColumn,
|
||||||
'tags': v2_utils.format_list_flat}
|
'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return rows, utils.get_dict_properties(data, rows,
|
return rows, utils.get_dict_properties(data, rows,
|
||||||
formatters=formatters)
|
formatters=formatters)
|
||||||
|
|||||||
@@ -179,10 +179,10 @@ class CreateLoadBalancer(command.ShowOne):
|
|||||||
data['loadbalancer']['vip_vnic_type'] = 'normal'
|
data['loadbalancer']['vip_vnic_type'] = 'normal'
|
||||||
|
|
||||||
formatters = {
|
formatters = {
|
||||||
'listeners': v2_utils.format_list,
|
'listeners': v2_utils.ListColumn,
|
||||||
'pools': v2_utils.format_list,
|
'pools': v2_utils.ListColumn,
|
||||||
'l7policies': v2_utils.format_list,
|
'l7policies': v2_utils.ListColumn,
|
||||||
'tags': v2_utils.format_list_flat
|
'tags': v2_utils.FlatListColumn
|
||||||
}
|
}
|
||||||
|
|
||||||
return (rows,
|
return (rows,
|
||||||
@@ -407,10 +407,10 @@ class ShowLoadBalancer(command.ShowOne):
|
|||||||
data['vip_vnic_type'] = 'normal'
|
data['vip_vnic_type'] = 'normal'
|
||||||
|
|
||||||
formatters = {
|
formatters = {
|
||||||
'listeners': v2_utils.format_list,
|
'listeners': v2_utils.ListColumn,
|
||||||
'pools': v2_utils.format_list,
|
'pools': v2_utils.ListColumn,
|
||||||
'l7policies': v2_utils.format_list,
|
'l7policies': v2_utils.ListColumn,
|
||||||
'tags': v2_utils.format_list_flat
|
'tags': v2_utils.FlatListColumn
|
||||||
}
|
}
|
||||||
|
|
||||||
return (rows, (utils.get_dict_properties(
|
return (rows, (utils.get_dict_properties(
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ class ShowMember(command.ShowOne):
|
|||||||
if not data.get('vnic_type', False):
|
if not data.get('vnic_type', False):
|
||||||
data['vnic_type'] = 'normal'
|
data['vnic_type'] = 'normal'
|
||||||
|
|
||||||
formatters = {'tags': v2_utils.format_list_flat}
|
formatters = {'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return (rows, (utils.get_dict_properties(
|
return (rows, (utils.get_dict_properties(
|
||||||
data, rows, formatters=formatters)))
|
data, rows, formatters=formatters)))
|
||||||
@@ -239,7 +239,7 @@ class CreateMember(command.ShowOne):
|
|||||||
if not data['member'].get('vnic_type', False):
|
if not data['member'].get('vnic_type', False):
|
||||||
data['member']['vnic_type'] = 'normal'
|
data['member']['vnic_type'] = 'normal'
|
||||||
|
|
||||||
formatters = {'tags': v2_utils.format_list_flat}
|
formatters = {'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return (rows,
|
return (rows,
|
||||||
(utils.get_dict_properties(
|
(utils.get_dict_properties(
|
||||||
|
|||||||
@@ -181,11 +181,11 @@ class CreatePool(command.ShowOne):
|
|||||||
data['pool']['id']))
|
data['pool']['id']))
|
||||||
}
|
}
|
||||||
|
|
||||||
formatters = {'loadbalancers': v2_utils.format_list,
|
formatters = {'loadbalancers': v2_utils.ListColumn,
|
||||||
'members': v2_utils.format_list,
|
'members': v2_utils.ListColumn,
|
||||||
'listeners': v2_utils.format_list,
|
'listeners': v2_utils.ListColumn,
|
||||||
'session_persistence': v2_utils.format_hash,
|
'session_persistence': v2_utils.HashColumn,
|
||||||
'tags': v2_utils.format_list_flat}
|
'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return (rows, (utils.get_dict_properties(
|
return (rows, (utils.get_dict_properties(
|
||||||
data['pool'], rows, formatters=formatters,
|
data['pool'], rows, formatters=formatters,
|
||||||
@@ -244,9 +244,9 @@ class ListPool(lister.Lister):
|
|||||||
columns = const.POOL_COLUMNS
|
columns = const.POOL_COLUMNS
|
||||||
attrs = v2_utils.get_pool_attrs(self.app.client_manager, parsed_args)
|
attrs = v2_utils.get_pool_attrs(self.app.client_manager, parsed_args)
|
||||||
data = self.app.client_manager.load_balancer.pool_list(**attrs)
|
data = self.app.client_manager.load_balancer.pool_list(**attrs)
|
||||||
formatters = {'loadbalancers': v2_utils.format_list,
|
formatters = {'loadbalancers': v2_utils.ListColumn,
|
||||||
'members': v2_utils.format_list,
|
'members': v2_utils.ListColumn,
|
||||||
'listeners': v2_utils.format_list}
|
'listeners': v2_utils.ListColumn}
|
||||||
|
|
||||||
return (columns,
|
return (columns,
|
||||||
(utils.get_dict_properties(
|
(utils.get_dict_properties(
|
||||||
@@ -284,11 +284,11 @@ class ShowPool(command.ShowOne):
|
|||||||
data = self.app.client_manager.load_balancer.pool_show(
|
data = self.app.client_manager.load_balancer.pool_show(
|
||||||
pool_id=pool_id,
|
pool_id=pool_id,
|
||||||
)
|
)
|
||||||
formatters = {'loadbalancers': v2_utils.format_list,
|
formatters = {'loadbalancers': v2_utils.ListColumn,
|
||||||
'members': v2_utils.format_list,
|
'members': v2_utils.ListColumn,
|
||||||
'listeners': v2_utils.format_list,
|
'listeners': v2_utils.ListColumn,
|
||||||
'session_persistence': v2_utils.format_hash,
|
'session_persistence': v2_utils.HashColumn,
|
||||||
'tags': v2_utils.format_list_flat}
|
'tags': v2_utils.FlatListColumn}
|
||||||
|
|
||||||
return (rows, (utils.get_dict_properties(
|
return (rows, (utils.get_dict_properties(
|
||||||
data, rows, formatters=formatters,
|
data, rows, formatters=formatters,
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ class ListQuota(lister.Lister):
|
|||||||
attrs = v2_utils.get_listener_attrs(self.app.client_manager,
|
attrs = v2_utils.get_listener_attrs(self.app.client_manager,
|
||||||
parsed_args)
|
parsed_args)
|
||||||
data = self.app.client_manager.load_balancer.quota_list(**attrs)
|
data = self.app.client_manager.load_balancer.quota_list(**attrs)
|
||||||
formatters = {'quotas': v2_utils.format_list}
|
formatters = {'quotas': v2_utils.ListColumn}
|
||||||
return (columns,
|
return (columns,
|
||||||
(utils.get_dict_properties(s, columns, formatters=formatters)
|
(utils.get_dict_properties(s, columns, formatters=formatters)
|
||||||
for s in data['quotas']))
|
for s in data['quotas']))
|
||||||
|
|||||||
@@ -14,6 +14,7 @@
|
|||||||
import functools
|
import functools
|
||||||
import ipaddress
|
import ipaddress
|
||||||
|
|
||||||
|
from cliff import columns
|
||||||
from openstackclient.identity import common as identity_common
|
from openstackclient.identity import common as identity_common
|
||||||
from osc_lib import exceptions as osc_exc
|
from osc_lib import exceptions as osc_exc
|
||||||
from osc_lib import utils
|
from osc_lib import utils
|
||||||
@@ -702,16 +703,31 @@ def format_list(data):
|
|||||||
return '\n'.join(i['id'] for i in data)
|
return '\n'.join(i['id'] for i in data)
|
||||||
|
|
||||||
|
|
||||||
|
class ListColumn(columns.FormattableColumn):
|
||||||
|
def human_readable(self):
|
||||||
|
return format_list(self._value)
|
||||||
|
|
||||||
|
|
||||||
def format_list_flat(data):
|
def format_list_flat(data):
|
||||||
return '\n'.join(i for i in data)
|
return '\n'.join(i for i in data)
|
||||||
|
|
||||||
|
|
||||||
|
class FlatListColumn(columns.FormattableColumn):
|
||||||
|
def human_readable(self):
|
||||||
|
return format_list_flat(self._value)
|
||||||
|
|
||||||
|
|
||||||
def format_hash(data):
|
def format_hash(data):
|
||||||
if data:
|
if data:
|
||||||
return '\n'.join('{}={}'.format(k, v) for k, v in data.items())
|
return '\n'.join('{}={}'.format(k, v) for k, v in data.items())
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
||||||
|
class HashColumn(columns.FormattableColumn):
|
||||||
|
def human_readable(self):
|
||||||
|
return format_hash(self._value)
|
||||||
|
|
||||||
|
|
||||||
def _format_kv(data):
|
def _format_kv(data):
|
||||||
formatted_kv = {}
|
formatted_kv = {}
|
||||||
values = data.split(',')
|
values = data.split(',')
|
||||||
|
|||||||
Reference in New Issue
Block a user