Skip to content

Commit 8409bd5

Browse files
authored
Merge pull request #2012 from olemarkus/e2e-filter-non-eligible-targets
Don't consider nodes with exclude-from-external-load-balancer eligible worker nodes in e2e
2 parents 2577491 + c7dc98b commit 8409bd5

File tree

2 files changed

+15
-12
lines changed

2 files changed

+15
-12
lines changed

test/e2e/service/nlb_instance_target.go

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,18 @@ func (s *NLBInstanceTestStack) GetLoadBalancerIngressHostName() string {
5555
}
5656

5757
func (s *NLBInstanceTestStack) GetWorkerNodes(ctx context.Context, f *framework.Framework) ([]corev1.Node, error) {
58-
nodeList := &corev1.NodeList{}
59-
err := f.K8sClient.List(ctx, nodeList)
58+
allNodes := &corev1.NodeList{}
59+
err := f.K8sClient.List(ctx, allNodes)
6060
if err != nil {
6161
return nil, err
6262
}
63-
return nodeList.Items, nil
63+
nodeList := []corev1.Node{}
64+
for _, node := range allNodes.Items {
65+
if _, notarget := node.Labels["node.kubernetes.io/exclude-from-external-load-balancers"]; !notarget {
66+
nodeList = append(nodeList, node)
67+
}
68+
}
69+
return nodeList, nil
6470
}
6571

6672
func (s *NLBInstanceTestStack) ApplyNodeLabels(ctx context.Context, f *framework.Framework, node *corev1.Node, labels map[string]string) error {

test/e2e/service/nlb_instance_target_test.go

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -47,16 +47,15 @@ var _ = Describe("test k8s service reconciled by the aws load balancer controlle
4747
})
4848

4949
By("verifying AWS loadbalancer resources", func() {
50-
nodeList := &corev1.NodeList{}
51-
err := tf.K8sClient.List(ctx, nodeList)
50+
nodeList, err := stack.GetWorkerNodes(ctx, tf)
5251
Expect(err).ToNot(HaveOccurred())
5352
err = verifyAWSLoadBalancerResources(ctx, tf, lbARN, LoadBalancerExpectation{
5453
Type: "network",
5554
Scheme: "internet-facing",
5655
TargetType: "instance",
5756
Listeners: stack.resourceStack.getListenersPortMap(),
5857
TargetGroups: stack.resourceStack.getTargetGroupNodePortMap(),
59-
NumTargets: len(nodeList.Items),
58+
NumTargets: len(nodeList),
6059
TargetGroupHC: &TargetGroupHC{
6160
Protocol: "TCP",
6261
Port: "traffic-port",
@@ -69,10 +68,9 @@ var _ = Describe("test k8s service reconciled by the aws load balancer controlle
6968
Expect(err).NotTo(HaveOccurred())
7069
})
7170
By("waiting for target group targets to be healthy", func() {
72-
nodeList := &corev1.NodeList{}
73-
err := tf.K8sClient.List(ctx, nodeList)
71+
nodeList, err := stack.GetWorkerNodes(ctx, tf)
7472
Expect(err).ToNot(HaveOccurred())
75-
err = waitUntilTargetsAreHealthy(ctx, tf, lbARN, len(nodeList.Items))
73+
err = waitUntilTargetsAreHealthy(ctx, tf, lbARN, len(nodeList))
7674
Expect(err).NotTo(HaveOccurred())
7775
})
7876
By("waiting until DNS name is available", func() {
@@ -174,16 +172,15 @@ var _ = Describe("test k8s service reconciled by the aws load balancer controlle
174172
Expect(lbARN).ToNot(BeEmpty())
175173
})
176174
By("verifying AWS loadbalancer resources", func() {
177-
nodeList := &corev1.NodeList{}
178-
err := tf.K8sClient.List(ctx, nodeList)
175+
nodeList, err := stack.GetWorkerNodes(ctx, tf)
179176
Expect(err).ToNot(HaveOccurred())
180177
err = verifyAWSLoadBalancerResources(ctx, tf, lbARN, LoadBalancerExpectation{
181178
Type: "network",
182179
Scheme: "internal",
183180
TargetType: "instance",
184181
Listeners: stack.resourceStack.getListenersPortMap(),
185182
TargetGroups: stack.resourceStack.getTargetGroupNodePortMap(),
186-
NumTargets: len(nodeList.Items),
183+
NumTargets: len(nodeList),
187184
TargetGroupHC: &TargetGroupHC{
188185
Protocol: "TCP",
189186
Port: "traffic-port",

0 commit comments

Comments
 (0)