summaryrefslogtreecommitdiff
path: root/openstackclient/compute/v2
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2019-08-27 18:04:57 +0000
committerGerrit Code Review <review@openstack.org>2019-08-27 18:04:57 +0000
commitc9cc8b0ae2ebb14ba2893057c2388764b60aeb11 (patch)
treeb1325ba58149d8af921d0cb8485bea029a33562f /openstackclient/compute/v2
parent6c818c492569bc9304c166a79bf812603cbb6358 (diff)
parent03a2accb2f13f82b1090e1ae6f154bf263e7e252 (diff)
downloadpython-openstackclient-c9cc8b0ae2ebb14ba2893057c2388764b60aeb11.tar.gz
Merge "Format aggregate command fields and de-race functional tests"
Diffstat (limited to 'openstackclient/compute/v2')
-rw-r--r--openstackclient/compute/v2/aggregate.py46
1 files changed, 43 insertions, 3 deletions
diff --git a/openstackclient/compute/v2/aggregate.py b/openstackclient/compute/v2/aggregate.py
index fa646478..3834de1f 100644
--- a/openstackclient/compute/v2/aggregate.py
+++ b/openstackclient/compute/v2/aggregate.py
@@ -18,6 +18,7 @@
import logging
+from osc_lib.cli import format_columns
from osc_lib.cli import parseractions
from osc_lib.command import command
from osc_lib import exceptions
@@ -58,6 +59,15 @@ class AddAggregateHost(command.ShowOne):
info = {}
info.update(data._info)
+
+ # Special mapping for columns to make the output easier to read:
+ # 'metadata' --> 'properties'
+ info.update(
+ {
+ 'hosts': format_columns.ListColumn(info.pop('hosts')),
+ 'properties': format_columns.DictColumn(info.pop('metadata')),
+ },
+ )
return zip(*sorted(six.iteritems(info)))
@@ -101,8 +111,20 @@ class CreateAggregate(command.ShowOne):
parsed_args.property,
)._info)
- # TODO(dtroyer): re-format metadata field to properites as
- # in the set command
+ # Special mapping for columns to make the output easier to read:
+ # 'metadata' --> 'properties'
+ hosts = None
+ properties = None
+ if 'hosts' in info.keys():
+ hosts = format_columns.ListColumn(info.pop('hosts'))
+ if 'metadata' in info.keys():
+ properties = format_columns.DictColumn(info.pop('metadata'))
+ info.update(
+ {
+ 'hosts': hosts,
+ 'properties': properties,
+ },
+ )
return zip(*sorted(six.iteritems(info)))
@@ -186,6 +208,10 @@ class ListAggregate(command.Lister):
return (column_headers,
(utils.get_item_properties(
s, columns,
+ formatters={
+ 'Hosts': format_columns.ListColumn,
+ 'Metadata': format_columns.DictColumn,
+ },
) for s in data))
@@ -220,6 +246,15 @@ class RemoveAggregateHost(command.ShowOne):
info = {}
info.update(data._info)
+
+ # Special mapping for columns to make the output easier to read:
+ # 'metadata' --> 'properties'
+ info.update(
+ {
+ 'hosts': format_columns.ListColumn(info.pop('hosts')),
+ 'properties': format_columns.DictColumn(info.pop('metadata')),
+ },
+ )
return zip(*sorted(six.iteritems(info)))
@@ -326,7 +361,12 @@ class ShowAggregate(command.ShowOne):
# 'metadata' --> 'properties'
data._info.update(
{
- 'properties': utils.format_dict(data._info.pop('metadata')),
+ 'hosts': format_columns.ListColumn(
+ data._info.pop('hosts')
+ ),
+ 'properties': format_columns.DictColumn(
+ data._info.pop('metadata')
+ ),
},
)