From 5e79016ea922e7b040e86cd267c704d63b83c422 Mon Sep 17 00:00:00 2001 From: Matt Rogers Date: Wed, 2 Jan 2019 11:35:19 -0500 Subject: [PATCH] Check for an operator config change before updating --- pkg/operator/operator.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pkg/operator/operator.go b/pkg/operator/operator.go index 8a7f9a35..989b024e 100644 --- a/pkg/operator/operator.go +++ b/pkg/operator/operator.go @@ -6,6 +6,7 @@ import ( "github.com/blang/semver" + apiequality "k8s.io/apimachinery/pkg/api/equality" apierrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" utilerrors "k8s.io/apimachinery/pkg/util/errors" @@ -114,6 +115,8 @@ func (c serviceCertSignerOperator) Sync(obj metav1.Object) error { return nil } + operatorConfigOriginal := operatorConfig.DeepCopy() + var currentActualVerion *semver.Version if operatorConfig.Status.CurrentAvailability != nil { @@ -183,8 +186,10 @@ func (c serviceCertSignerOperator) Sync(obj metav1.Object) error { operatorConfig.Status.ObservedGeneration = operatorConfig.ObjectMeta.Generation } - if _, err := c.operatorConfigClient.ServiceCertSignerOperatorConfigs().UpdateStatus(operatorConfig); err != nil { - errors = append(errors, err) + if !apiequality.Semantic.DeepEqual(operatorConfigOriginal, operatorConfig) { + if _, err := c.operatorConfigClient.ServiceCertSignerOperatorConfigs().UpdateStatus(operatorConfig); err != nil { + errors = append(errors, err) + } } return utilerrors.NewAggregate(errors)