Skip to content

Commit aa43388

Browse files
authored
cmd/k8s-operator: fix a bunch of status equality checks (tailscale#14270)
Updates tailscale#14269 Signed-off-by: Irbe Krumina <[email protected]>
1 parent cbf1a4e commit aa43388

File tree

8 files changed

+15
-15
lines changed

8 files changed

+15
-15
lines changed

cmd/k8s-operator/connector.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ func (a *ConnectorReconciler) Reconcile(ctx context.Context, req reconcile.Reque
113113
setStatus := func(cn *tsapi.Connector, _ tsapi.ConditionType, status metav1.ConditionStatus, reason, message string) (reconcile.Result, error) {
114114
tsoperator.SetConnectorCondition(cn, tsapi.ConnectorReady, status, reason, message, cn.Generation, a.clock, logger)
115115
var updateErr error
116-
if !apiequality.Semantic.DeepEqual(oldCnStatus, cn.Status) {
116+
if !apiequality.Semantic.DeepEqual(oldCnStatus, &cn.Status) {
117117
// An error encountered here should get returned by the Reconcile function.
118118
updateErr = a.Client.Status().Update(ctx, cn)
119119
}

cmd/k8s-operator/egress-services-readiness.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ func (esrr *egressSvcsReadinessReconciler) Reconcile(ctx context.Context, req re
6464
oldStatus := svc.Status.DeepCopy()
6565
defer func() {
6666
tsoperator.SetServiceCondition(svc, tsapi.EgressSvcReady, st, reason, msg, esrr.clock, l)
67-
if !apiequality.Semantic.DeepEqual(oldStatus, svc.Status) {
67+
if !apiequality.Semantic.DeepEqual(oldStatus, &svc.Status) {
6868
err = errors.Join(err, esrr.Status().Update(ctx, svc))
6969
}
7070
}()

cmd/k8s-operator/egress-services.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ func (esr *egressSvcsReconciler) Reconcile(ctx context.Context, req reconcile.Re
123123

124124
oldStatus := svc.Status.DeepCopy()
125125
defer func() {
126-
if !apiequality.Semantic.DeepEqual(oldStatus, svc.Status) {
126+
if !apiequality.Semantic.DeepEqual(oldStatus, &svc.Status) {
127127
err = errors.Join(err, esr.Status().Update(ctx, svc))
128128
}
129129
}()

cmd/k8s-operator/nameserver.go

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ func (a *NameserverReconciler) Reconcile(ctx context.Context, req reconcile.Requ
8686
return reconcile.Result{}, nil
8787
}
8888
logger.Info("Cleaning up DNSConfig resources")
89-
if err := a.maybeCleanup(ctx, &dnsCfg, logger); err != nil {
89+
if err := a.maybeCleanup(&dnsCfg); err != nil {
9090
logger.Errorf("error cleaning up reconciler resource: %v", err)
9191
return res, err
9292
}
@@ -100,9 +100,9 @@ func (a *NameserverReconciler) Reconcile(ctx context.Context, req reconcile.Requ
100100
}
101101

102102
oldCnStatus := dnsCfg.Status.DeepCopy()
103-
setStatus := func(dnsCfg *tsapi.DNSConfig, conditionType tsapi.ConditionType, status metav1.ConditionStatus, reason, message string) (reconcile.Result, error) {
103+
setStatus := func(dnsCfg *tsapi.DNSConfig, status metav1.ConditionStatus, reason, message string) (reconcile.Result, error) {
104104
tsoperator.SetDNSConfigCondition(dnsCfg, tsapi.NameserverReady, status, reason, message, dnsCfg.Generation, a.clock, logger)
105-
if !apiequality.Semantic.DeepEqual(oldCnStatus, dnsCfg.Status) {
105+
if !apiequality.Semantic.DeepEqual(oldCnStatus, &dnsCfg.Status) {
106106
// An error encountered here should get returned by the Reconcile function.
107107
if updateErr := a.Client.Status().Update(ctx, dnsCfg); updateErr != nil {
108108
err = errors.Wrap(err, updateErr.Error())
@@ -118,7 +118,7 @@ func (a *NameserverReconciler) Reconcile(ctx context.Context, req reconcile.Requ
118118
msg := "invalid cluster configuration: more than one tailscale.com/dnsconfigs found. Please ensure that no more than one is created."
119119
logger.Error(msg)
120120
a.recorder.Event(&dnsCfg, corev1.EventTypeWarning, reasonMultipleDNSConfigsPresent, messageMultipleDNSConfigsPresent)
121-
setStatus(&dnsCfg, tsapi.NameserverReady, metav1.ConditionFalse, reasonMultipleDNSConfigsPresent, messageMultipleDNSConfigsPresent)
121+
setStatus(&dnsCfg, metav1.ConditionFalse, reasonMultipleDNSConfigsPresent, messageMultipleDNSConfigsPresent)
122122
}
123123

124124
if !slices.Contains(dnsCfg.Finalizers, FinalizerName) {
@@ -127,7 +127,7 @@ func (a *NameserverReconciler) Reconcile(ctx context.Context, req reconcile.Requ
127127
if err := a.Update(ctx, &dnsCfg); err != nil {
128128
msg := fmt.Sprintf(messageNameserverCreationFailed, err)
129129
logger.Error(msg)
130-
return setStatus(&dnsCfg, tsapi.NameserverReady, metav1.ConditionFalse, reasonNameserverCreationFailed, msg)
130+
return setStatus(&dnsCfg, metav1.ConditionFalse, reasonNameserverCreationFailed, msg)
131131
}
132132
}
133133
if err := a.maybeProvision(ctx, &dnsCfg, logger); err != nil {
@@ -149,7 +149,7 @@ func (a *NameserverReconciler) Reconcile(ctx context.Context, req reconcile.Requ
149149
dnsCfg.Status.Nameserver = &tsapi.NameserverStatus{
150150
IP: ip,
151151
}
152-
return setStatus(&dnsCfg, tsapi.NameserverReady, metav1.ConditionTrue, reasonNameserverCreated, reasonNameserverCreated)
152+
return setStatus(&dnsCfg, metav1.ConditionTrue, reasonNameserverCreated, reasonNameserverCreated)
153153
}
154154
logger.Info("nameserver Service does not have an IP address allocated, waiting...")
155155
return reconcile.Result{}, nil
@@ -188,7 +188,7 @@ func (a *NameserverReconciler) maybeProvision(ctx context.Context, tsDNSCfg *tsa
188188
// maybeCleanup removes DNSConfig from being tracked. The cluster resources
189189
// created, will be automatically garbage collected as they are owned by the
190190
// DNSConfig.
191-
func (a *NameserverReconciler) maybeCleanup(ctx context.Context, dnsCfg *tsapi.DNSConfig, logger *zap.SugaredLogger) error {
191+
func (a *NameserverReconciler) maybeCleanup(dnsCfg *tsapi.DNSConfig) error {
192192
a.mu.Lock()
193193
a.managedNameservers.Remove(dnsCfg.UID)
194194
a.mu.Unlock()

cmd/k8s-operator/proxyclass.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ func (pcr *ProxyClassReconciler) Reconcile(ctx context.Context, req reconcile.Re
103103
} else {
104104
tsoperator.SetProxyClassCondition(pc, tsapi.ProxyClassReady, metav1.ConditionTrue, reasonProxyClassValid, reasonProxyClassValid, pc.Generation, pcr.clock, logger)
105105
}
106-
if !apiequality.Semantic.DeepEqual(oldPCStatus, pc.Status) {
106+
if !apiequality.Semantic.DeepEqual(oldPCStatus, &pc.Status) {
107107
if err := pcr.Client.Status().Update(ctx, pc); err != nil {
108108
logger.Errorf("error updating ProxyClass status: %v", err)
109109
return reconcile.Result{}, err

cmd/k8s-operator/proxygroup.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ func (r *ProxyGroupReconciler) Reconcile(ctx context.Context, req reconcile.Requ
110110
oldPGStatus := pg.Status.DeepCopy()
111111
setStatusReady := func(pg *tsapi.ProxyGroup, status metav1.ConditionStatus, reason, message string) (reconcile.Result, error) {
112112
tsoperator.SetProxyGroupCondition(pg, tsapi.ProxyGroupReady, status, reason, message, pg.Generation, r.clock, logger)
113-
if !apiequality.Semantic.DeepEqual(oldPGStatus, pg.Status) {
113+
if !apiequality.Semantic.DeepEqual(oldPGStatus, &pg.Status) {
114114
// An error encountered here should get returned by the Reconcile function.
115115
if updateErr := r.Client.Status().Update(ctx, pg); updateErr != nil {
116116
err = errors.Wrap(err, updateErr.Error())

cmd/k8s-operator/svc.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,7 @@ func (a *ServiceReconciler) Reconcile(ctx context.Context, req reconcile.Request
131131
func (a *ServiceReconciler) maybeCleanup(ctx context.Context, logger *zap.SugaredLogger, svc *corev1.Service) (err error) {
132132
oldSvcStatus := svc.Status.DeepCopy()
133133
defer func() {
134-
if !apiequality.Semantic.DeepEqual(oldSvcStatus, svc.Status) {
134+
if !apiequality.Semantic.DeepEqual(oldSvcStatus, &svc.Status) {
135135
// An error encountered here should get returned by the Reconcile function.
136136
err = errors.Join(err, a.Client.Status().Update(ctx, svc))
137137
}
@@ -196,7 +196,7 @@ func (a *ServiceReconciler) maybeCleanup(ctx context.Context, logger *zap.Sugare
196196
func (a *ServiceReconciler) maybeProvision(ctx context.Context, logger *zap.SugaredLogger, svc *corev1.Service) (err error) {
197197
oldSvcStatus := svc.Status.DeepCopy()
198198
defer func() {
199-
if !apiequality.Semantic.DeepEqual(oldSvcStatus, svc.Status) {
199+
if !apiequality.Semantic.DeepEqual(oldSvcStatus, &svc.Status) {
200200
// An error encountered here should get returned by the Reconcile function.
201201
err = errors.Join(err, a.Client.Status().Update(ctx, svc))
202202
}

cmd/k8s-operator/tsrecorder.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ func (r *RecorderReconciler) Reconcile(ctx context.Context, req reconcile.Reques
102102
oldTSRStatus := tsr.Status.DeepCopy()
103103
setStatusReady := func(tsr *tsapi.Recorder, status metav1.ConditionStatus, reason, message string) (reconcile.Result, error) {
104104
tsoperator.SetRecorderCondition(tsr, tsapi.RecorderReady, status, reason, message, tsr.Generation, r.clock, logger)
105-
if !apiequality.Semantic.DeepEqual(oldTSRStatus, tsr.Status) {
105+
if !apiequality.Semantic.DeepEqual(oldTSRStatus, &tsr.Status) {
106106
// An error encountered here should get returned by the Reconcile function.
107107
if updateErr := r.Client.Status().Update(ctx, tsr); updateErr != nil {
108108
err = errors.Wrap(err, updateErr.Error())

0 commit comments

Comments
 (0)