Pass pointer to node in NodCondition

This commit is contained in:
Wojciech Tyczynski 2016-07-07 13:06:32 +02:00
parent 58c95c136f
commit 7219802ac7
6 changed files with 8 additions and 8 deletions

View File

@ -122,7 +122,7 @@ func (s *StoreToPodLister) Exists(pod *api.Pod) (bool, error) {
// NodeConditionPredicate is a function that indicates whether the given node's conditions meet
// some set of criteria defined by the function.
type NodeConditionPredicate func(node api.Node) bool
type NodeConditionPredicate func(node *api.Node) bool
// StoreToNodeLister makes a Store have the List method of the client.NodeInterface
// The Store must contain (only) Nodes.
@ -153,9 +153,9 @@ type storeToNodeConditionLister struct {
// List returns a list of nodes that match the conditions defined by the predicate functions in the storeToNodeConditionLister.
func (s storeToNodeConditionLister) List() (nodes api.NodeList, err error) {
for _, m := range s.store.List() {
node := *m.(*api.Node)
node := m.(*api.Node)
if s.predicate(node) {
nodes.Items = append(nodes.Items, node)
nodes.Items = append(nodes.Items, *node)
} else {
glog.V(5).Infof("Node %s matches none of the conditions", node.Name)
}

View File

@ -97,7 +97,7 @@ func TestStoreToNodeConditionLister(t *testing.T) {
store.Add(n)
}
predicate := func(node api.Node) bool {
predicate := func(node *api.Node) bool {
for _, cond := range node.Status.Conditions {
if cond.Type == api.NodeOutOfDisk && cond.Status == api.ConditionTrue {
return false

View File

@ -641,7 +641,7 @@ func hostsFromNodeList(list *api.NodeList) []string {
}
func getNodeConditionPredicate() cache.NodeConditionPredicate {
return func(node api.Node) bool {
return func(node *api.Node) bool {
// We add the master to the node list, but its unschedulable. So we use this to filter
// the master.
// TODO: Use a node annotation to indicate the master

View File

@ -319,7 +319,7 @@ func TestGetNodeConditionPredicate(t *testing.T) {
}
pred := getNodeConditionPredicate()
for _, test := range tests {
accept := pred(test.node)
accept := pred(&test.node)
if accept != test.expectAccept {
t.Errorf("Test failed for %s, expected %v, saw %v", test.name, test.expectAccept, accept)
}

View File

@ -432,7 +432,7 @@ func (f *ConfigFactory) responsibleForPod(pod *api.Pod) bool {
}
func getNodeConditionPredicate() cache.NodeConditionPredicate {
return func(node api.Node) bool {
return func(node *api.Node) bool {
for _, cond := range node.Status.Conditions {
// We consider the node for scheduling only when its:
// - NodeReady condition status is ConditionTrue,

View File

@ -464,7 +464,7 @@ func TestNodeConditionPredicate(t *testing.T) {
nodeNames := []string{}
for _, node := range nodeList.Items {
if nodeFunc(node) {
if nodeFunc(&node) {
nodeNames = append(nodeNames, node.Name)
}
}