Merge "fix multinode tempest test failure"

This commit is contained in:
Jenkins
2017-06-14 02:27:25 +00:00
committed by Gerrit Code Review
5 changed files with 46 additions and 17 deletions

View File

@@ -111,7 +111,7 @@ def extend_with_default(validator_class):
def set_defaults(validator, properties, instance, schema):
for prop, subschema in properties.items():
if "default" in subschema:
if "default" in subschema and instance is not None:
instance.setdefault(prop, subschema["default"])
for error in validate_properties(
@@ -128,6 +128,9 @@ def extend_with_strict_schema(validator_class):
validate_properties = validator_class.VALIDATORS["properties"]
def strict_schema(validator, properties, instance, schema):
if instance is None:
return
for para in instance.keys():
if para not in properties.keys():
raise exception.AuditParameterNotAllowed(parameter=para)

View File

@@ -308,13 +308,17 @@ class WorkloadStabilization(base.WorkloadStabilizationBaseStrategy):
)
if avg_meter is None:
raise exception.NoSuchMetricForHost(
metric=meter_name,
host=node_id)
if meter_name == 'hardware.memory.used':
avg_meter /= oslo_utils.units.Ki
if meter_name == 'compute.node.cpu.percent':
avg_meter /= 100
if meter_name == 'hardware.memory.used':
avg_meter = node.memory
if meter_name == 'compute.node.cpu.percent':
avg_meter = 1
LOG.warning('No values returned by node %s for %s',
node_id, meter_name)
else:
if meter_name == 'hardware.memory.used':
avg_meter /= oslo_utils.units.Ki
if meter_name == 'compute.node.cpu.percent':
avg_meter /= 100
hosts_load[node_id][metric] = avg_meter
return hosts_load