summaryrefslogtreecommitdiff
path: root/openstackclient/compute
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-12-03 20:36:48 +0000
committerGerrit Code Review <review@openstack.org>2015-12-03 20:36:48 +0000
commitc39b720f00abc44de92dc3c7e09ff0f3cb9f084f (patch)
treeccaf939363326c4127cdeb4f94b90a58aeef3144 /openstackclient/compute
parent5645c0e11ded9b8536fc8401645d2d33a9c911fb (diff)
parent0069a0196717eb7ba60bcda5b89bf87608cc01dd (diff)
downloadpython-openstackclient-c39b720f00abc44de92dc3c7e09ff0f3cb9f084f.tar.gz
Merge "Support "server list" searching by both flavor name and ID."
Diffstat (limited to 'openstackclient/compute')
-rw-r--r--openstackclient/compute/v2/server.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/openstackclient/compute/v2/server.py b/openstackclient/compute/v2/server.py
index 9dca7844..42699f8d 100644
--- a/openstackclient/compute/v2/server.py
+++ b/openstackclient/compute/v2/server.py
@@ -712,7 +712,7 @@ class ListServer(lister.Lister):
parser.add_argument(
'--flavor',
metavar='<flavor>',
- help=_('Search by flavor'),
+ help=_('Search by flavor (name or ID)'),
)
parser.add_argument(
'--image',
@@ -789,6 +789,13 @@ class ListServer(lister.Lister):
parsed_args.user_domain,
).id
+ # Nova only supports list servers searching by flavor ID. So if a
+ # flavor name is given, map it to ID.
+ flavor_id = None
+ if parsed_args.flavor:
+ flavor_id = utils.find_resource(compute_client.flavors,
+ parsed_args.flavor).id
+
search_opts = {
'reservation_id': parsed_args.reservation_id,
'ip': parsed_args.ip,
@@ -796,7 +803,7 @@ class ListServer(lister.Lister):
'name': parsed_args.name,
'instance_name': parsed_args.instance_name,
'status': parsed_args.status,
- 'flavor': parsed_args.flavor,
+ 'flavor': flavor_id,
'image': parsed_args.image,
'host': parsed_args.host,
'tenant_id': project_id,