Merge pull request #36210 from justinsb/flex_node_conditions

Automatic merge from submit-queue

Avoid hard-coding list of Node Conditions
This commit is contained in:
Kubernetes Submit Queue 2016-11-15 01:02:01 -08:00 committed by GitHub
commit 05d067d6bb

View File

@ -507,17 +507,24 @@ func getNodeConditionPredicate() cache.NodeConditionPredicate {
// - NodeReady condition status is ConditionTrue, // - NodeReady condition status is ConditionTrue,
// - NodeOutOfDisk condition status is ConditionFalse, // - NodeOutOfDisk condition status is ConditionFalse,
// - NodeNetworkUnavailable condition status is ConditionFalse. // - NodeNetworkUnavailable condition status is ConditionFalse.
if cond.Type == api.NodeReady && cond.Status != api.ConditionTrue { switch cond.Type {
case api.NodeReady:
if cond.Status != api.ConditionTrue {
glog.V(4).Infof("Ignoring node %v with %v condition status %v", node.Name, cond.Type, cond.Status) glog.V(4).Infof("Ignoring node %v with %v condition status %v", node.Name, cond.Type, cond.Status)
return false return false
} else if cond.Type == api.NodeOutOfDisk && cond.Status != api.ConditionFalse { }
glog.V(4).Infof("Ignoring node %v with %v condition status %v", node.Name, cond.Type, cond.Status)
return false case api.NodeMemoryPressure, api.NodeDiskPressure:
} else if cond.Type == api.NodeNetworkUnavailable && cond.Status != api.ConditionFalse { // We don't block on "pressure" conditions; these are warnings, not errors!
default:
// We assume everything else is blocking if the condition is True or Unknown
if cond.Status != api.ConditionFalse {
glog.V(4).Infof("Ignoring node %v with %v condition status %v", node.Name, cond.Type, cond.Status) glog.V(4).Infof("Ignoring node %v with %v condition status %v", node.Name, cond.Type, cond.Status)
return false return false
} }
} }
}
// Ignore nodes that are marked unschedulable // Ignore nodes that are marked unschedulable
if node.Spec.Unschedulable { if node.Spec.Unschedulable {
glog.V(4).Infof("Ignoring node %v since it is unschedulable", node.Name) glog.V(4).Infof("Ignoring node %v since it is unschedulable", node.Name)