From a9220ad3175c38979a052cd595efd34888d886c6 Mon Sep 17 00:00:00 2001 From: Yuhang Wei Date: Thu, 24 Aug 2023 11:00:04 +0800 Subject: [PATCH 3/5] KubeOS: modify code for clean code add err handler in NewControllerManager Signed-off-by: Yuhang Wei --- cmd/operator/main.go | 6 +++++- cmd/proxy/main.go | 8 ++++++-- pkg/common/common.go | 7 +++---- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/cmd/operator/main.go b/cmd/operator/main.go index 17b74e1..8249ad2 100644 --- a/cmd/operator/main.go +++ b/cmd/operator/main.go @@ -41,7 +41,11 @@ func init() { } func main() { - mgr := common.NewControllerManager(setupLog, scheme) + mgr, err := common.NewControllerManager(setupLog, scheme) + if err != nil { + setupLog.Error(err, "unable to start manager") + os.Exit(1) + } if err := (&controllers.OSReconciler{ Client: mgr.GetClient(), diff --git a/cmd/proxy/main.go b/cmd/proxy/main.go index ce1f58d..3a537d9 100644 --- a/cmd/proxy/main.go +++ b/cmd/proxy/main.go @@ -44,10 +44,14 @@ func init() { } func main() { - mgr := common.NewControllerManager(setupLog, scheme) + var err error + mgr, err := common.NewControllerManager(setupLog, scheme) + if err != nil { + setupLog.Error(err, "unable to start manager") + os.Exit(1) + } reconciler := controllers.NewOSReconciler(mgr) - var err error if reconciler.Connection, err = agentclient.New("unix://" + filepath.Join(server.SockDir, server.SockName)); err != nil { setupLog.Error(err, "Error running proxy") } diff --git a/pkg/common/common.go b/pkg/common/common.go index 4653a61..e888179 100644 --- a/pkg/common/common.go +++ b/pkg/common/common.go @@ -15,7 +15,6 @@ package common import ( "flag" - "os" "github.com/go-logr/logr" "k8s.io/apimachinery/pkg/runtime" @@ -33,7 +32,7 @@ type ReadStatusWriter interface { } // NewControllerManager configure and return a manager -func NewControllerManager(setupLog logr.Logger, scheme *runtime.Scheme) manager.Manager { +func NewControllerManager(setupLog logr.Logger, scheme *runtime.Scheme) (manager.Manager, error) { opts := zap.Options{} opts.BindFlags(flag.CommandLine) @@ -46,7 +45,7 @@ func NewControllerManager(setupLog logr.Logger, scheme *runtime.Scheme) manager. }) if err != nil { setupLog.Error(err, "unable to start manager") - os.Exit(1) + return nil, err } - return mgr + return mgr, nil } -- 2.39.0