MCPcopy
hub / github.com/kubewall/kubewall / Serve

Function Serve

backend/cmd/cmd.go:45–120  ·  view source on GitHub ↗
(cmd *cobra.Command)

Source from the content-addressed store, hash-verified

43}
44
45func Serve(cmd *cobra.Command) error {
46 env := config.NewEnv()
47
48 k8sClientQPS, err := cmd.Flags().GetInt("k8s-client-qps")
49 if err != nil {
50 return err
51 }
52 k9sClientBurst, err := cmd.Flags().GetInt("k8s-client-burst")
53 if err != nil {
54 return err
55 }
56 // Determine listen address
57 listenAddr, err := cmd.Flags().GetString("listen")
58 if err != nil {
59 return err
60 }
61 // Backward compatibility: fallback to --port if --listen is not set
62 port, err := cmd.Flags().GetString("port")
63 if err != nil {
64 return err
65 }
66 if port != ":7080" {
67 log.Warn("Flag --port is deprecated, use --listen instead. This will be removed in a future release.")
68 switch {
69 case port == "":
70 listenAddr = "localhost:7080" // default
71 case port[0] == ':':
72 listenAddr = "localhost" + port
73 default:
74 listenAddr = "localhost:" + port
75 }
76 }
77 certFile, err := cmd.Flags().GetString("certFile")
78 if err != nil {
79 return err
80 }
81 keyFile, err := cmd.Flags().GetString("keyFile")
82 if err != nil {
83 return err
84 }
85 noOpen, err := cmd.Flags().GetBool("no-open-browser")
86 if err != nil {
87 return err
88 }
89
90 isSecure := certFile != "" || keyFile != ""
91
92 cfg := config.NewAppConfig(Version, listenAddr, k8sClientQPS, k9sClientBurst, isSecure)
93 cfg.LoadAppConfig()
94
95 c := container.NewContainer(env, cfg)
96 e := echo.New()
97 startBanner()
98 routes.ConfigureRoutes(e, c)
99
100 if !noOpen {
101 openDefaultBrowser(c.Config().IsSecure, c.Config().ListenAddr)
102 }

Callers 1

cmd.goFile · 0.85

Calls 5

LoadAppConfigMethod · 0.95
ConfigMethod · 0.95
startBannerFunction · 0.85
openDefaultBrowserFunction · 0.85
StartMethod · 0.80

Tested by

no test coverage detected