cmd/k8s-operator: maybe fix CI?

Change-Id: I28ed9323fcc43797013d98ae677ac72d22ee9fe7
Signed-off-by: Tom Proctor <tomhjp@users.noreply.github.com>
This commit is contained in:
Tom Proctor 2025-07-07 13:11:23 +01:00
parent ca91bcf6ef
commit e0638b3b44

View File

@ -6,7 +6,6 @@
package main package main
import ( import (
"context"
"encoding/json" "encoding/json"
"fmt" "fmt"
"net/netip" "net/netip"
@ -663,7 +662,7 @@ func TestProxyGroupWithStaticEndpoints(t *testing.T) {
Address: addr.ip, Address: addr.ip,
}) })
} }
if err := fc.Create(context.Background(), no); err != nil { if err := fc.Create(t.Context(), no); err != nil {
t.Fatalf("failed to create node %q: %v", n.name, err) t.Fatalf("failed to create node %q: %v", n.name, err)
} }
createdNodes = append(createdNodes, *no) createdNodes = append(createdNodes, *no)
@ -674,11 +673,11 @@ func TestProxyGroupWithStaticEndpoints(t *testing.T) {
pg.Spec.Replicas = r.replicas pg.Spec.Replicas = r.replicas
pc.Spec.StaticEndpoints = r.staticEndpointConfig pc.Spec.StaticEndpoints = r.staticEndpointConfig
createOrUpdate(context.Background(), fc, "", pg, func(o *tsapi.ProxyGroup) { createOrUpdate(t.Context(), fc, "", pg, func(o *tsapi.ProxyGroup) {
o.Spec.Replicas = pg.Spec.Replicas o.Spec.Replicas = pg.Spec.Replicas
}) })
createOrUpdate(context.Background(), fc, "", pc, func(o *tsapi.ProxyClass) { createOrUpdate(t.Context(), fc, "", pc, func(o *tsapi.ProxyClass) {
o.Spec.StaticEndpoints = pc.Spec.StaticEndpoints o.Spec.StaticEndpoints = pc.Spec.StaticEndpoints
}) })
@ -690,7 +689,7 @@ func TestProxyGroupWithStaticEndpoints(t *testing.T) {
expectEvents(t, fr, r.expectedEvents) expectEvents(t, fr, r.expectedEvents)
sts := &appsv1.StatefulSet{} sts := &appsv1.StatefulSet{}
err := fc.Get(context.Background(), client.ObjectKey{Namespace: tsNamespace, Name: pg.Name}, sts) err := fc.Get(t.Context(), client.ObjectKey{Namespace: tsNamespace, Name: pg.Name}, sts)
if r.expectStatefulSet { if r.expectStatefulSet {
if err != nil { if err != nil {
t.Fatalf("failed to get StatefulSet: %v", err) t.Fatalf("failed to get StatefulSet: %v", err)
@ -698,7 +697,7 @@ func TestProxyGroupWithStaticEndpoints(t *testing.T) {
for j := range 2 { for j := range 2 {
sec := &corev1.Secret{} sec := &corev1.Secret{}
if err := fc.Get(context.Background(), client.ObjectKey{Namespace: tsNamespace, Name: fmt.Sprintf("%s-%d-config", pg.Name, j)}, sec); err != nil { if err := fc.Get(t.Context(), client.ObjectKey{Namespace: tsNamespace, Name: fmt.Sprintf("%s-%d-config", pg.Name, j)}, sec); err != nil {
t.Fatalf("failed to get state Secret for replica %d: %v", j, err) t.Fatalf("failed to get state Secret for replica %d: %v", j, err)
} }
@ -744,7 +743,7 @@ func TestProxyGroupWithStaticEndpoints(t *testing.T) {
} }
pgroup := &tsapi.ProxyGroup{} pgroup := &tsapi.ProxyGroup{}
err = fc.Get(context.Background(), client.ObjectKey{Name: pg.Name}, pgroup) err = fc.Get(t.Context(), client.ObjectKey{Name: pg.Name}, pgroup)
if err != nil { if err != nil {
t.Fatalf("failed to get ProxyGroup %q: %v", pg.Name, err) t.Fatalf("failed to get ProxyGroup %q: %v", pg.Name, err)
} }
@ -766,7 +765,7 @@ func TestProxyGroupWithStaticEndpoints(t *testing.T) {
// node cleanup between reconciles // node cleanup between reconciles
// we created a new set of nodes for each // we created a new set of nodes for each
for _, n := range createdNodes { for _, n := range createdNodes {
err := fc.Delete(context.Background(), &n) err := fc.Delete(t.Context(), &n)
if err != nil && !apierrors.IsNotFound(err) { if err != nil && !apierrors.IsNotFound(err) {
t.Fatalf("failed to delete node: %v", err) t.Fatalf("failed to delete node: %v", err)
} }
@ -789,14 +788,14 @@ func TestProxyGroupWithStaticEndpoints(t *testing.T) {
authKeyRateLimits: make(map[string]*rate.Limiter), authKeyRateLimits: make(map[string]*rate.Limiter),
} }
if err := fc.Delete(context.Background(), pg); err != nil { if err := fc.Delete(t.Context(), pg); err != nil {
t.Fatalf("error deleting ProxyGroup: %v", err) t.Fatalf("error deleting ProxyGroup: %v", err)
} }
expectReconciled(t, reconciler, "", pg.Name) expectReconciled(t, reconciler, "", pg.Name)
expectMissing[tsapi.ProxyGroup](t, fc, "", pg.Name) expectMissing[tsapi.ProxyGroup](t, fc, "", pg.Name)
if err := fc.Delete(context.Background(), pc); err != nil { if err := fc.Delete(t.Context(), pc); err != nil {
t.Fatalf("error deleting ProxyClass: %v", err) t.Fatalf("error deleting ProxyClass: %v", err)
} }
expectMissing[tsapi.ProxyClass](t, fc, "", pc.Name) expectMissing[tsapi.ProxyClass](t, fc, "", pc.Name)
@ -876,7 +875,7 @@ func TestProxyGroup(t *testing.T) {
LastTransitionTime: metav1.Time{Time: cl.Now().Truncate(time.Second)}, LastTransitionTime: metav1.Time{Time: cl.Now().Truncate(time.Second)},
}}, }},
} }
if err := fc.Status().Update(context.Background(), pc); err != nil { if err := fc.Status().Update(t.Context(), pc); err != nil {
t.Fatal(err) t.Fatal(err)
} }
@ -984,7 +983,7 @@ func TestProxyGroup(t *testing.T) {
}) })
t.Run("delete_and_cleanup", func(t *testing.T) { t.Run("delete_and_cleanup", func(t *testing.T) {
if err := fc.Delete(context.Background(), pg); err != nil { if err := fc.Delete(t.Context(), pg); err != nil {
t.Fatal(err) t.Fatal(err)
} }
@ -1056,7 +1055,7 @@ func TestProxyGroupTypes(t *testing.T) {
verifyProxyGroupCounts(t, reconciler, 0, 1) verifyProxyGroupCounts(t, reconciler, 0, 1)
sts := &appsv1.StatefulSet{} sts := &appsv1.StatefulSet{}
if err := fc.Get(context.Background(), client.ObjectKey{Namespace: tsNamespace, Name: pg.Name}, sts); err != nil { if err := fc.Get(t.Context(), client.ObjectKey{Namespace: tsNamespace, Name: pg.Name}, sts); err != nil {
t.Fatalf("failed to get StatefulSet: %v", err) t.Fatalf("failed to get StatefulSet: %v", err)
} }
verifyEnvVar(t, sts, "TS_INTERNAL_APP", kubetypes.AppProxyGroupEgress) verifyEnvVar(t, sts, "TS_INTERNAL_APP", kubetypes.AppProxyGroupEgress)
@ -1066,7 +1065,7 @@ func TestProxyGroupTypes(t *testing.T) {
// Verify that egress configuration has been set up. // Verify that egress configuration has been set up.
cm := &corev1.ConfigMap{} cm := &corev1.ConfigMap{}
cmName := fmt.Sprintf("%s-egress-config", pg.Name) cmName := fmt.Sprintf("%s-egress-config", pg.Name)
if err := fc.Get(context.Background(), client.ObjectKey{Namespace: tsNamespace, Name: cmName}, cm); err != nil { if err := fc.Get(t.Context(), client.ObjectKey{Namespace: tsNamespace, Name: cmName}, cm); err != nil {
t.Fatalf("failed to get ConfigMap: %v", err) t.Fatalf("failed to get ConfigMap: %v", err)
} }
@ -1142,7 +1141,7 @@ func TestProxyGroupTypes(t *testing.T) {
expectReconciled(t, reconciler, "", pg.Name) expectReconciled(t, reconciler, "", pg.Name)
sts := &appsv1.StatefulSet{} sts := &appsv1.StatefulSet{}
if err := fc.Get(context.Background(), client.ObjectKey{Namespace: tsNamespace, Name: pg.Name}, sts); err != nil { if err := fc.Get(t.Context(), client.ObjectKey{Namespace: tsNamespace, Name: pg.Name}, sts); err != nil {
t.Fatalf("failed to get StatefulSet: %v", err) t.Fatalf("failed to get StatefulSet: %v", err)
} }
@ -1162,7 +1161,7 @@ func TestProxyGroupTypes(t *testing.T) {
Replicas: ptr.To[int32](0), Replicas: ptr.To[int32](0),
}, },
} }
if err := fc.Create(context.Background(), pg); err != nil { if err := fc.Create(t.Context(), pg); err != nil {
t.Fatal(err) t.Fatal(err)
} }
@ -1170,7 +1169,7 @@ func TestProxyGroupTypes(t *testing.T) {
verifyProxyGroupCounts(t, reconciler, 1, 2) verifyProxyGroupCounts(t, reconciler, 1, 2)
sts := &appsv1.StatefulSet{} sts := &appsv1.StatefulSet{}
if err := fc.Get(context.Background(), client.ObjectKey{Namespace: tsNamespace, Name: pg.Name}, sts); err != nil { if err := fc.Get(t.Context(), client.ObjectKey{Namespace: tsNamespace, Name: pg.Name}, sts); err != nil {
t.Fatalf("failed to get StatefulSet: %v", err) t.Fatalf("failed to get StatefulSet: %v", err)
} }
verifyEnvVar(t, sts, "TS_INTERNAL_APP", kubetypes.AppProxyGroupIngress) verifyEnvVar(t, sts, "TS_INTERNAL_APP", kubetypes.AppProxyGroupIngress)
@ -1420,7 +1419,7 @@ func TestProxyGroupGetAuthKey(t *testing.T) {
}) })
} }
authKey, err := reconciler.getAuthKey(context.Background(), pg, cfgSecret, 0, reconciler.l.With("TestName", t.Name())) authKey, err := reconciler.getAuthKey(t.Context(), pg, cfgSecret, 0, reconciler.l.With("TestName", t.Name()))
if err != nil { if err != nil {
t.Fatalf("unexpected error getting auth key: %v", err) t.Fatalf("unexpected error getting auth key: %v", err)
} }
@ -1448,7 +1447,7 @@ func TestProxyGroupGetAuthKey(t *testing.T) {
// to allow for CI that is extremely slow, but should happen on // to allow for CI that is extremely slow, but should happen on
// first try for any reasonable machine. // first try for any reasonable machine.
for range 100 { for range 100 {
_, err := reconciler.getAuthKey(context.Background(), pg, cfgSecret, 0, reconciler.l.With("TestName", t.Name())) _, err := reconciler.getAuthKey(t.Context(), pg, cfgSecret, 0, reconciler.l.With("TestName", t.Name()))
if err != nil { if err != nil {
if !strings.Contains(err.Error(), "rate limit exceeded") { if !strings.Contains(err.Error(), "rate limit exceeded") {
t.Fatalf("unexpected error getting auth key: %v", err) t.Fatalf("unexpected error getting auth key: %v", err)
@ -1497,7 +1496,7 @@ func proxyClassesForLEStagingTest() (*tsapi.ProxyClass, *tsapi.ProxyClass, *tsap
func setProxyClassReady(t *testing.T, fc client.Client, cl *tstest.Clock, name string) *tsapi.ProxyClass { func setProxyClassReady(t *testing.T, fc client.Client, cl *tstest.Clock, name string) *tsapi.ProxyClass {
t.Helper() t.Helper()
pc := &tsapi.ProxyClass{} pc := &tsapi.ProxyClass{}
if err := fc.Get(context.Background(), client.ObjectKey{Name: name}, pc); err != nil { if err := fc.Get(t.Context(), client.ObjectKey{Name: name}, pc); err != nil {
t.Fatal(err) t.Fatal(err)
} }
pc.Status = tsapi.ProxyClassStatus{ pc.Status = tsapi.ProxyClassStatus{
@ -1510,7 +1509,7 @@ func setProxyClassReady(t *testing.T, fc client.Client, cl *tstest.Clock, name s
ObservedGeneration: pc.Generation, ObservedGeneration: pc.Generation,
}}, }},
} }
if err := fc.Status().Update(context.Background(), pc); err != nil { if err := fc.Status().Update(t.Context(), pc); err != nil {
t.Fatal(err) t.Fatal(err)
} }
return pc return pc
@ -1589,7 +1588,7 @@ func expectSecrets(t *testing.T, fc client.WithWatch, expected []string) {
t.Helper() t.Helper()
secrets := &corev1.SecretList{} secrets := &corev1.SecretList{}
if err := fc.List(context.Background(), secrets); err != nil { if err := fc.List(t.Context(), secrets); err != nil {
t.Fatal(err) t.Fatal(err)
} }
@ -1704,7 +1703,7 @@ func TestProxyGroupLetsEncryptStaging(t *testing.T) {
// Verify that the StatefulSet created for ProxyGrup has // Verify that the StatefulSet created for ProxyGrup has
// the expected setting for the staging endpoint. // the expected setting for the staging endpoint.
sts := &appsv1.StatefulSet{} sts := &appsv1.StatefulSet{}
if err := fc.Get(context.Background(), client.ObjectKey{Namespace: tsNamespace, Name: pg.Name}, sts); err != nil { if err := fc.Get(t.Context(), client.ObjectKey{Namespace: tsNamespace, Name: pg.Name}, sts); err != nil {
t.Fatalf("failed to get StatefulSet: %v", err) t.Fatalf("failed to get StatefulSet: %v", err)
} }