hardware: Rework get_number_of_serial_ports
Make this use '_get_flavor_image_meta', thus reducing duplication. Change-Id: I340001e433d07321c75795648d9c6bc7b16598dd
This commit is contained in:
parent
17fef0c958
commit
320c0855a8
@ -1906,8 +1906,8 @@ class SocketPortInUseException(NovaException):
|
||||
|
||||
|
||||
class ImageSerialPortNumberInvalid(Invalid):
|
||||
msg_fmt = _("Number of serial ports '%(num_ports)s' specified in "
|
||||
"'%(property)s' isn't valid.")
|
||||
msg_fmt = _("Number of serial ports specified in flavor is invalid: "
|
||||
"expected an integer, got '%(num_ports)s'")
|
||||
|
||||
|
||||
class ImageSerialPortNumberExceedFlavorValue(Invalid):
|
||||
|
@ -173,21 +173,16 @@ def get_number_of_serial_ports(flavor, image_meta):
|
||||
|
||||
:returns: number of serial ports
|
||||
"""
|
||||
flavor_num_ports, image_num_ports = _get_flavor_image_meta(
|
||||
'serial_port_count', flavor, image_meta)
|
||||
if flavor_num_ports:
|
||||
try:
|
||||
flavor_num_ports = int(flavor_num_ports)
|
||||
except ValueError:
|
||||
raise exception.ImageSerialPortNumberInvalid(
|
||||
num_ports=flavor_num_ports)
|
||||
|
||||
def get_number(obj, property):
|
||||
num_ports = obj.get(property)
|
||||
if num_ports is not None:
|
||||
try:
|
||||
num_ports = int(num_ports)
|
||||
except ValueError:
|
||||
raise exception.ImageSerialPortNumberInvalid(
|
||||
num_ports=num_ports, property=property)
|
||||
return num_ports
|
||||
|
||||
flavor_num_ports = get_number(flavor.extra_specs, "hw:serial_port_count")
|
||||
image_num_ports = image_meta.properties.get("hw_serial_port_count", None)
|
||||
|
||||
if (flavor_num_ports and image_num_ports) is not None:
|
||||
if flavor_num_ports and image_num_ports:
|
||||
if image_num_ports > flavor_num_ports:
|
||||
raise exception.ImageSerialPortNumberExceedFlavorValue()
|
||||
return image_num_ports
|
||||
|
Loading…
x
Reference in New Issue
Block a user