Get flavor list sorted when launching instance

Currently, the flavor list is random on the panel of booting
instance, which is not a good experience for end user. This
patch fixes it and adds test accordingly.

Closes-Bug: #1715042

Change-Id: Id5369ab75487d214a3395ba507b4394d4497903e
This commit is contained in:
Feilong Wang
2017-08-29 15:57:27 +12:00
parent a3cc0625a6
commit cf06d278af
3 changed files with 27 additions and 7 deletions

View File

@@ -34,7 +34,7 @@ def flavor_list(request):
return []
def sort_flavor_list(request, flavors):
def sort_flavor_list(request, flavors, with_menu_label=True):
"""Utility method to sort a list of flavors.
By default, returns the available flavors, sorted by RAM usage (ascending).
@@ -57,8 +57,12 @@ def sort_flavor_list(request, flavors):
return get_key(flavor, sort_key)
else:
key = sort_key
flavor_list = [(flavor.id, '%s' % flavor.name)
for flavor in sorted(flavors, key=key, reverse=rev)]
if with_menu_label:
flavor_list = [(flavor.id, '%s' % flavor.name)
for flavor in sorted(flavors, key=key, reverse=rev)]
else:
flavor_list = sorted(flavors, key=key, reverse=rev)
return flavor_list
except Exception:
exceptions.handle(request,