Merge pull request #27613 from jszczepkowski/kac-tests-cleanup
Automatic merge from submit-queue Fixed updating node labels in cluster autoscaler e2e test. []() Fixed updating node labels in cluster autoscaler e2e test.
This commit is contained in:
		| @@ -29,6 +29,7 @@ import ( | |||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	client "k8s.io/kubernetes/pkg/client/unversioned" | 	client "k8s.io/kubernetes/pkg/client/unversioned" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
|  | 	"k8s.io/kubernetes/pkg/util/sets" | ||||||
| 	"k8s.io/kubernetes/test/e2e/framework" | 	"k8s.io/kubernetes/test/e2e/framework" | ||||||
|  |  | ||||||
| 	"github.com/golang/glog" | 	"github.com/golang/glog" | ||||||
| @@ -153,22 +154,17 @@ var _ = framework.KubeDescribe("Cluster size autoscaling [Slow]", func() { | |||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		removeLabels := func(nodesToClean []string) { | 		removeLabels := func(nodesToClean sets.String) { | ||||||
| 			By("Removing labels from nodes") | 			By("Removing labels from nodes") | ||||||
| 			for _, node := range nodesToClean { | 			updateNodeLabels(c, nodesToClean, nil, labels) | ||||||
| 				updateLabelsForNode(f, node, map[string]string{}, []string{"cluster-autoscaling-test.special-node"}) |  | ||||||
| 			} |  | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		nodes, err := GetGroupNodes(minMig) | 		nodes, err := GetGroupNodes(minMig) | ||||||
| 		defer removeLabels(nodes) |  | ||||||
| 		nodesMap := map[string]struct{}{} |  | ||||||
| 		ExpectNoError(err) | 		ExpectNoError(err) | ||||||
|  | 		nodesSet := sets.NewString(nodes...) | ||||||
|  | 		defer removeLabels(nodesSet) | ||||||
| 		By(fmt.Sprintf("Annotating nodes of the smallest MIG(%s): %v", minMig, nodes)) | 		By(fmt.Sprintf("Annotating nodes of the smallest MIG(%s): %v", minMig, nodes)) | ||||||
| 		for _, node := range nodes { | 		updateNodeLabels(c, nodesSet, labels, nil) | ||||||
| 			updateLabelsForNode(f, node, labels, nil) |  | ||||||
| 			nodesMap[node] = struct{}{} |  | ||||||
| 		} |  | ||||||
|  |  | ||||||
| 		CreateNodeSelectorPods(f, "node-selector", minSize+1, labels, false) | 		CreateNodeSelectorPods(f, "node-selector", minSize+1, labels, false) | ||||||
|  |  | ||||||
| @@ -179,14 +175,12 @@ var _ = framework.KubeDescribe("Cluster size autoscaling [Slow]", func() { | |||||||
| 			func(size int) bool { return size >= nodeCount+1 }, scaleUpTimeout)) | 			func(size int) bool { return size >= nodeCount+1 }, scaleUpTimeout)) | ||||||
|  |  | ||||||
| 		newNodes, err := GetGroupNodes(minMig) | 		newNodes, err := GetGroupNodes(minMig) | ||||||
| 		defer removeLabels(newNodes) |  | ||||||
| 		ExpectNoError(err) | 		ExpectNoError(err) | ||||||
| 		By(fmt.Sprintf("Setting labels for new nodes: %v", newNodes)) | 		newNodesSet := sets.NewString(newNodes...) | ||||||
| 		for _, node := range newNodes { | 		newNodesSet.Delete(nodes...) | ||||||
| 			if _, old := nodesMap[node]; !old { | 		defer removeLabels(newNodesSet) | ||||||
| 				updateLabelsForNode(f, node, labels, nil) | 		By(fmt.Sprintf("Setting labels for new nodes: %v", newNodesSet.List())) | ||||||
| 			} | 		updateNodeLabels(c, newNodesSet, labels, nil) | ||||||
| 		} |  | ||||||
|  |  | ||||||
| 		framework.ExpectNoError(WaitForClusterSizeFunc(f.Client, | 		framework.ExpectNoError(WaitForClusterSizeFunc(f.Client, | ||||||
| 			func(size int) bool { return size >= nodeCount+1 }, scaleUpTimeout)) | 			func(size int) bool { return size >= nodeCount+1 }, scaleUpTimeout)) | ||||||
| @@ -463,17 +457,3 @@ func setMigSizes(sizes map[string]int) { | |||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
| func updateLabelsForNode(f *framework.Framework, node string, addLabels map[string]string, rmLabels []string) { |  | ||||||
| 	n, err := f.Client.Nodes().Get(node) |  | ||||||
| 	ExpectNoError(err) |  | ||||||
| 	for _, label := range rmLabels { |  | ||||||
| 		delete(n.Labels, label) |  | ||||||
| 	} |  | ||||||
| 	for label, value := range addLabels { |  | ||||||
| 		n.Labels[label] = value |  | ||||||
| 	} |  | ||||||
| 	_, err = f.Client.Nodes().Update(n) |  | ||||||
| 	ExpectNoError(err) |  | ||||||
| 	By(fmt.Sprintf("Labels successfully updated for node %s", node)) |  | ||||||
| } |  | ||||||
|   | |||||||
| @@ -114,7 +114,7 @@ func updateNodeLabels(c *client.Client, nodeNames sets.String, toAdd, toRemove m | |||||||
| 					delete(node.ObjectMeta.Labels, k) | 					delete(node.ObjectMeta.Labels, k) | ||||||
| 				} | 				} | ||||||
| 			} | 			} | ||||||
| 			_, err := c.Nodes().Update(node) | 			_, err = c.Nodes().Update(node) | ||||||
| 			if err != nil { | 			if err != nil { | ||||||
| 				framework.Logf("Error updating node %s: %v", nodeName, err) | 				framework.Logf("Error updating node %s: %v", nodeName, err) | ||||||
| 			} else { | 			} else { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 k8s-merge-robot
					k8s-merge-robot