diff --git a/go.mod b/go.mod index afad80f..60d609a 100644 --- a/go.mod +++ b/go.mod @@ -3,9 +3,9 @@ module github.com/zncdatadev/hbase-operator go 1.23.0 require ( - github.com/onsi/ginkgo/v2 v2.20.1 - github.com/onsi/gomega v1.34.1 - github.com/zncdatadev/operator-go v0.9.0 + github.com/onsi/ginkgo/v2 v2.20.2 + github.com/onsi/gomega v1.34.2 + github.com/zncdatadev/operator-go v0.9.1 k8s.io/api v0.31.0 k8s.io/apimachinery v0.31.0 k8s.io/client-go v0.31.0 @@ -35,7 +35,7 @@ require ( github.com/google/gnostic-models v0.6.8 // indirect github.com/google/go-cmp v0.6.0 // indirect github.com/google/gofuzz v1.2.0 // indirect - github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 // indirect + github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5 // indirect github.com/google/uuid v1.6.0 // indirect github.com/imdario/mergo v0.3.6 // indirect github.com/josharian/intern v1.0.0 // indirect @@ -56,7 +56,7 @@ require ( golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect golang.org/x/net v0.28.0 // indirect golang.org/x/oauth2 v0.21.0 // indirect - golang.org/x/sys v0.23.0 // indirect + golang.org/x/sys v0.24.0 // indirect golang.org/x/term v0.23.0 // indirect golang.org/x/text v0.17.0 // indirect golang.org/x/time v0.3.0 // indirect diff --git a/go.sum b/go.sum index bebac93..4470f7d 100644 --- a/go.sum +++ b/go.sum @@ -48,8 +48,8 @@ github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 h1:FKHo8hFI3A+7w0aUQuYXQ+6EN5stWmeY/AZqtM8xk9k= -github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo= +github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5 h1:5iH8iuqE5apketRbSFBy+X1V0o+l+8NF1avt4HWl7cA= +github.com/google/pprof v0.0.0-20240827171923-fa2c70bbbfe5/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/imdario/mergo v0.3.6 h1:xTNEAn+kxVO7dTZGu0CegyqKZmoWFI0rF8UxjlB2d28= @@ -76,10 +76,10 @@ github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9G github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= -github.com/onsi/ginkgo/v2 v2.20.1 h1:YlVIbqct+ZmnEph770q9Q7NVAz4wwIiVNahee6JyUzo= -github.com/onsi/ginkgo/v2 v2.20.1/go.mod h1:lG9ey2Z29hR41WMVthyJBGUBcBhGOtoPF2VFMvBXFCI= -github.com/onsi/gomega v1.34.1 h1:EUMJIKUjM8sKjYbtxQI9A4z2o+rruxnzNvpknOXie6k= -github.com/onsi/gomega v1.34.1/go.mod h1:kU1QgUvBDLXBJq618Xvm2LUX6rSAfRaFRTcdOeDLwwY= +github.com/onsi/ginkgo/v2 v2.20.2 h1:7NVCeyIWROIAheY21RLS+3j2bb52W0W82tkberYytp4= +github.com/onsi/ginkgo/v2 v2.20.2/go.mod h1:K9gyxPIlb+aIvnZ8bd9Ak+YP18w3APlR+5coaZoE2ag= +github.com/onsi/gomega v1.34.2 h1:pNCwDkzrsv7MS9kpaQvVb1aVLahQXyJ/Tv5oAZMI3i8= +github.com/onsi/gomega v1.34.2/go.mod h1:v1xfxRgk0KIsG+QOdm7p8UosrOzPYRo60fd3B/1Dukc= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= @@ -110,8 +110,8 @@ github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM= github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/zncdatadev/operator-go v0.9.0 h1:oti/Xnlct8aAL9tuIRGnA/xszlAHDU+2TsKJUhtmcJk= -github.com/zncdatadev/operator-go v0.9.0/go.mod h1:k8v05akeQUEyLqqDdd1Kgrckhi5LKsBTFOExrHttO8M= +github.com/zncdatadev/operator-go v0.9.1 h1:UA3Pg2Jqfz9i8Z18pmD8tKllsmEyKEmC7nBSsYyS5Xk= +github.com/zncdatadev/operator-go v0.9.1/go.mod h1:4HcbUNm+hvHZtnISAuUxjkQa9dxCoWBdXfuQrfQPaQc= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= @@ -141,8 +141,8 @@ golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.23.0 h1:YfKFowiIMvtgl1UERQoTPPToxltDeZfbj4H7dVUCwmM= -golang.org/x/sys v0.23.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg= +golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.23.0 h1:F6D4vR+EHoL9/sWAWgAR1H2DcHr4PareCbAaCo1RpuU= golang.org/x/term v0.23.0/go.mod h1:DgV24QBUrK6jhZXl+20l6UWznPlwAHm1Q1mGHtydmSk= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= diff --git a/internal/controller/common/configmap.go b/internal/controller/common/configmap.go index cbf7dea..df6c6e5 100644 --- a/internal/controller/common/configmap.go +++ b/internal/controller/common/configmap.go @@ -214,37 +214,37 @@ func (r *ConfigMapReconciler[T]) GetZKZnodeConfig(ctx context.Context) (*ZnodeCo return &ZnodeConfiguration{ConfigMap: obj}, nil } -func (r *ConfigMapReconciler[T]) Reconcile(ctx context.Context) *reconciler.Result { +func (r *ConfigMapReconciler[T]) Reconcile(ctx context.Context) (ctrl.Result, error) { znode, err := r.GetZKZnodeConfig(ctx) if err != nil { - return reconciler.NewResult(true, 0, err) + return ctrl.Result{}, err } builder := r.GetBuilder() if err := builder.AddHbaseSite(znode); err != nil { - return reconciler.NewResult(true, 0, err) + return ctrl.Result{}, err } if err := builder.AddHbaseENVSh(); err != nil { - return reconciler.NewResult(true, 0, err) + return ctrl.Result{}, err } if err := builder.AddLog4jProperties(); err != nil { - return reconciler.NewResult(true, 0, err) + return ctrl.Result{}, err } if err := builder.AddSSLClientXML(); err != nil { - return reconciler.NewResult(true, 0, err) + return ctrl.Result{}, err } if err := builder.AddSSLServerXML(); err != nil { - return reconciler.NewResult(true, 0, err) + return ctrl.Result{}, err } resource, err := builder.Build(ctx) if err != nil { - return reconciler.NewResult(true, 0, err) + return ctrl.Result{}, err } return r.ResourceReconcile(ctx, resource) diff --git a/internal/controller/common/service.go b/internal/controller/common/service.go index 410318e..d511c34 100644 --- a/internal/controller/common/service.go +++ b/internal/controller/common/service.go @@ -27,6 +27,7 @@ func NewServiceReconciler( options.GetAnnotations(), ports, &[]corev1.ServiceType{corev1.ServiceTypeClusterIP}[0], + false, ), } } diff --git a/internal/controller/hbasecluster_controller.go b/internal/controller/hbasecluster_controller.go index e666f42..6470c37 100644 --- a/internal/controller/hbasecluster_controller.go +++ b/internal/controller/hbasecluster_controller.go @@ -93,17 +93,21 @@ func (r *HbaseClusterReconciler) Reconcile(ctx context.Context, req ctrl.Request return ctrl.Result{}, err } - if result := clusterReconciler.Reconcile(ctx); result.RequeueOrNot() { - return result.CtrlResult() + if result, err := clusterReconciler.Reconcile(ctx); err != nil { + return ctrl.Result{}, err + } else if !result.IsZero() { + return result, nil } - logger.Info("Cluster reconciled") + logger.Info("Cluster resource reconciled, checking if ready.", "cluster", instance.Name, "namespace", instance.Namespace) - if result := clusterReconciler.Ready(ctx); result.RequeueOrNot() { - return result.CtrlResult() + if result, err := clusterReconciler.Ready(ctx); err != nil { + return ctrl.Result{}, err + } else if !result.IsZero() { + return result, nil } - logger.V(1).Info("Reconcile finished") + logger.V(1).Info("Reconcile finished.", "cluster", instance.Name, "namespace", instance.Namespace) return ctrl.Result{}, nil }