diff --git a/troveclient/utils.py b/troveclient/utils.py index 69e0b3d3..e39ada33 100644 --- a/troveclient/utils.py +++ b/troveclient/utils.py @@ -181,7 +181,10 @@ def print_list(objs, fields, formatters={}, order_by=None, obj_is_dict=False, data = obj.get(field, '') else: data = getattr(obj, field, '') - row.append(str(data)) + if isinstance(data, six.string_types): + row.append(data.encode('utf-8')) + else: + row.append(str(data)) # set the alignment to right-aligned if it's a numeric if set_align and hasattr(data, '__int__'): align[labels[field]] = 'r' diff --git a/troveclient/v1/shell.py b/troveclient/v1/shell.py index ba693c92..8a479d6d 100644 --- a/troveclient/v1/shell.py +++ b/troveclient/v1/shell.py @@ -231,7 +231,8 @@ def do_flavor_list(cs, args): utils.print_list(_flavors, ['id', 'name', 'ram', 'vcpus', 'disk', 'ephemeral'], - labels={'ram': 'RAM', 'vcpus': 'vCPUs', 'disk': 'Disk'}) + labels={'ram': 'RAM', 'vcpus': 'vCPUs', 'disk': 'Disk'}, + order_by='ram') @utils.arg('flavor', metavar='', type=str,