Fix golints in extender

This commit is contained in:
Harry Zhang 2018-02-27 11:06:24 -08:00
parent 71603f2f85
commit b62d82422d
3 changed files with 12 additions and 10 deletions

View File

@ -184,18 +184,19 @@ func (h *HTTPExtender) restorePodFromNodeInfo(
metaPod *schedulerapi.MetaPod, metaPod *schedulerapi.MetaPod,
nodeName string, nodeName string,
nodeNameToInfo map[string]*schedulercache.NodeInfo) (*v1.Pod, error) { nodeNameToInfo map[string]*schedulercache.NodeInfo) (*v1.Pod, error) {
var nodeInfo *schedulercache.NodeInfo
if nodeInfo, ok := nodeNameToInfo[nodeName]; ok { if nodeInfo, ok := nodeNameToInfo[nodeName]; ok {
for _, pod := range nodeInfo.Pods() { for _, pod := range nodeInfo.Pods() {
if string(pod.UID) == metaPod.UID { if string(pod.UID) == metaPod.UID {
return pod, nil return pod, nil
} }
} }
return nil, fmt.Errorf("extender: %v claims to preempt pod (UID: %v) on node: %v, but the pod is not found on that node.", return nil, fmt.Errorf("extender: %v claims to preempt pod (UID: %v) on node: %v, but the pod is not found on that node",
h.extenderURL, metaPod, nodeInfo.Node().Name) h.extenderURL, metaPod, nodeInfo.Node().Name)
} else {
return nil, fmt.Errorf("extender: %v claims to preempt on node: %v but the node is not found in nodeNameToInfo map",
h.extenderURL, nodeInfo.Node().Name)
} }
return nil, fmt.Errorf("extender: %v claims to preempt on node: %v but the node is not found in nodeNameToInfo map",
h.extenderURL, nodeInfo.Node().Name)
} }
// convertToNodeNameToMetaVictims converts from struct type to meta types. // convertToNodeNameToMetaVictims converts from struct type to meta types.

View File

@ -54,6 +54,7 @@ type FitError struct {
FailedPredicates FailedPredicateMap FailedPredicates FailedPredicateMap
} }
// ErrNoNodesAvailable is used to describe the error that no nodes available to schedule pods.
var ErrNoNodesAvailable = fmt.Errorf("no nodes available to schedule pods") var ErrNoNodesAvailable = fmt.Errorf("no nodes available to schedule pods")
const ( const (
@ -253,11 +254,11 @@ func (g *genericScheduler) Preempt(pod *v1.Pod, nodeLister algorithm.NodeLister,
nominatedPods := g.getLowerPriorityNominatedPods(pod, candidateNode.Name) nominatedPods := g.getLowerPriorityNominatedPods(pod, candidateNode.Name)
if nodeInfo, ok := g.cachedNodeInfoMap[candidateNode.Name]; ok { if nodeInfo, ok := g.cachedNodeInfoMap[candidateNode.Name]; ok {
return nodeInfo.Node(), nodeToVictims[candidateNode].Pods, nominatedPods, err return nodeInfo.Node(), nodeToVictims[candidateNode].Pods, nominatedPods, err
} else {
return nil, nil, nil, fmt.Errorf(
"preemption failed: the target node %s has been deleted from scheduler cache",
candidateNode.Name)
} }
return nil, nil, nil, fmt.Errorf(
"preemption failed: the target node %s has been deleted from scheduler cache",
candidateNode.Name)
} }
// processPreemptionWithExtenders processes preemption with extenders // processPreemptionWithExtenders processes preemption with extenders

View File

@ -883,7 +883,7 @@ func TestSelectNodesForPreemption(t *testing.T) {
for _, test := range tests { for _, test := range tests {
nodes := []*v1.Node{} nodes := []*v1.Node{}
for _, n := range test.nodes { for _, n := range test.nodes {
node := makeNode(n, priorityutil.DefaultMilliCPURequest*5, priorityutil.DefaultMemoryRequest*5) node := makeNode(n, 1000*5, priorityutil.DefaultMemoryRequest*5)
node.ObjectMeta.Labels = map[string]string{"hostname": node.Name} node.ObjectMeta.Labels = map[string]string{"hostname": node.Name}
nodes = append(nodes, node) nodes = append(nodes, node)
} }
@ -1286,7 +1286,7 @@ func TestPreempt(t *testing.T) {
} }
cachedNodeInfoMap := map[string]*schedulercache.NodeInfo{} cachedNodeInfoMap := map[string]*schedulercache.NodeInfo{}
for _, name := range nodeNames { for _, name := range nodeNames {
node := makeNode(name, priorityutil.DefaultMilliCpuRequest*5, priorityutil.DefaultMemoryRequest*5) node := makeNode(name, 1000*5, priorityutil.DefaultMemoryRequest*5)
cache.AddNode(node) cache.AddNode(node)
// Set nodeInfo to extenders to mock extenders' cache for preemption. // Set nodeInfo to extenders to mock extenders' cache for preemption.