11package main
22
33import (
4- "flag"
5- "fmt"
64 "os"
75
8- "github.com/nginxinc/nginx-gateway-kubernetes/internal/implementation"
9- "github.com/nginxinc/nginx-gateway-kubernetes/pkg/sdk"
10- "k8s.io/client-go/rest"
6+ "github.com/nginxinc/nginx-gateway-kubernetes/internal/config"
7+ "github.com/nginxinc/nginx-gateway-kubernetes/internal/controller"
8+
9+ flag "github.com/spf13/pflag"
1110 "sigs.k8s.io/controller-runtime/pkg/log/zap"
12- "sigs.k8s.io/controller-runtime/pkg/manager"
13- "sigs.k8s.io/controller-runtime/pkg/manager/signals"
14- "sigs.k8s.io/gateway-api/apis/v1alpha2"
1511)
1612
1713var (
@@ -21,55 +17,31 @@ var (
2117 date string
2218
2319 // Command-line flags
24- gatewayClass = flag .String ("gatewayclass " , "" , "Tha name of the GatewayClass resource " )
20+ gatewayCtlrName = flag .String ("gateway-ctlr-name " , "" , "The name of the Gateway controller " )
2521)
2622
2723func main () {
2824 flag .Parse ()
2925
30- if * gatewayClass == "" {
31- fmt . Fprintln ( os . Stderr , "-gatewayclass argument must be set" )
26+ if * gatewayCtlrName == "" {
27+ flag . PrintDefaults ( )
3228 os .Exit (1 )
3329 }
3430
3531 logger := zap .New ()
32+ conf := config.Config {
33+ GatewayCtlrName : * gatewayCtlrName ,
34+ Logger : logger ,
35+ }
3636
3737 logger .Info ("Starting NGINX Gateway" ,
3838 "version" , version ,
3939 "commit" , commit ,
4040 "date" , date )
4141
42- config , err := rest .InClusterConfig ()
43- if err != nil {
44- logger .Error (err , "Failed to create InClusterConfig" )
45- os .Exit (1 )
46- }
47-
48- mgr , err := manager .New (config , manager.Options {
49- Logger : logger ,
50- })
51- if err != nil {
52- logger .Error (err , "Failed to create Manager" )
53- os .Exit (1 )
54- }
55-
56- err = v1alpha2 .AddToScheme (mgr .GetScheme ())
57- if err != nil {
58- logger .Error (err , "Failed to add Gateway API scheme" )
59- os .Exit (1 )
60- }
61-
62- err = sdk .RegisterGatewayClassController (mgr , implementation .NewGatewayClassImplementation (logger ))
63- if err != nil {
64- logger .Error (err , "Failed to register GatewayClassController" )
65- os .Exit (1 )
66- }
67-
68- logger .Info ("Starting manager" )
69-
70- err = mgr .Start (signals .SetupSignalHandler ())
42+ err := controller .Start (conf )
7143 if err != nil {
72- logger .Error (err , "Failed to start Manager " )
44+ logger .Error (err , "Failed to start control loop " )
7345 os .Exit (1 )
7446 }
7547}
0 commit comments