11package main
22
33import (
4- "context"
54 "flag"
65 "fmt"
76 "os"
8- "os/signal"
9- "syscall"
107
118 "github.com/nginxinc/nginx-gateway-kubernetes/internal/implementation"
12- "github.com/nginxinc/nginx-gateway-kubernetes/internal/sdk"
13- "go.uber.org/zap"
9+ "github.com/nginxinc/nginx-gateway-kubernetes/pkg/sdk"
1410 "k8s.io/client-go/rest"
15- "sigs.k8s.io/controller-runtime/pkg/log"
16- rzap "sigs.k8s.io/controller-runtime/pkg/log/zap"
11+ "sigs.k8s.io/controller-runtime/pkg/log/zap"
1712 "sigs.k8s.io/controller-runtime/pkg/manager"
13+ "sigs.k8s.io/controller-runtime/pkg/manager/signals"
1814 "sigs.k8s.io/gateway-api/apis/v1alpha2"
1915)
2016
@@ -36,62 +32,44 @@ func main() {
3632 os .Exit (1 )
3733 }
3834
39- logger , err := zap .NewProduction ()
40- if err != nil {
41- fmt .Fprintf (os .Stderr , "Failed to initialize logging: %v\n " , err )
42- os .Exit (1 )
43- }
44- sugar := logger .Sugar ()
35+ logger := zap .New ()
4536
46- sugar . Infow ("Starting NGINX Gateway" ,
37+ logger . Info ("Starting NGINX Gateway" ,
4738 "version" , version ,
4839 "commit" , commit ,
4940 "date" , date )
5041
5142 config , err := rest .InClusterConfig ()
5243 if err != nil {
53- sugar . Fatalw ( "Failed to create InClusterConfig" ,
54- "error" , err )
44+ logger . Error ( err , "Failed to create InClusterConfig" )
45+ os . Exit ( 1 )
5546 }
5647
57- log . SetLogger ( rzap . New ())
58-
59- mgr , err := manager . New ( config , manager. Options { })
48+ mgr , err := manager . New (config , manager. Options {
49+ Logger : logger ,
50+ })
6051 if err != nil {
61- sugar . Fatalw ( "Failed to create Manager" ,
62- "error" , err )
52+ logger . Error ( err , "Failed to create Manager" )
53+ os . Exit ( 1 )
6354 }
6455
6556 err = v1alpha2 .AddToScheme (mgr .GetScheme ())
6657 if err != nil {
67- if err != nil {
68- sugar .Fatalw ("Failed to add Gateway API scheme" ,
69- "error" , err )
70- }
58+ logger .Error (err , "Failed to add Gateway API scheme" )
59+ os .Exit (1 )
7160 }
7261
73- err = sdk .RegisterGatewayClassController (mgr , implementation .NewGatewayClassImplementation (sugar ))
62+ err = sdk .RegisterGatewayClassController (mgr , implementation .NewGatewayClassImplementation (logger ))
7463 if err != nil {
75- sugar . Fatalw ( "Failed to register GatewayClassController" ,
76- "error" , err )
64+ logger . Error ( err , "Failed to register GatewayClassController" )
65+ os . Exit ( 1 )
7766 }
7867
79- sugar .Infow ("Starting manager" )
80-
81- ctx , cancel := context .WithCancel (context .Background ())
82- signalChan := make (chan os.Signal , 1 )
83- signal .Notify (signalChan , os .Interrupt , syscall .SIGTERM )
84- go func () {
85- sugar .Infow ("Terminating because of the signal" ,
86- "signal" , <- signalChan )
68+ logger .Info ("Starting manager" )
8769
88- cancel ()
89- os .Exit (0 )
90- }()
91-
92- err = mgr .Start (ctx )
70+ err = mgr .Start (signals .SetupSignalHandler ())
9371 if err != nil {
94- sugar . Fatalw ( "Failed to start Manager" ,
95- "error" , err )
72+ logger . Error ( err , "Failed to start Manager" )
73+ os . Exit ( 1 )
9674 }
9775}
0 commit comments