Files
Yun Pan d19bd067c7 fix(lint): resolve controller and service issues (#7095)
* fix(lint): resolve controller and service issues

* fix(lifecycle): add missing test licenses

* fix(account): format debt sync code

* fix(lifecycle): resolve staging lint issues

* ci: update golangci-lint to v2.12.2

* ci: update golangci-lint config

* ci: adjust golangci-lint config

* fix(webhook): resolve admission lint issues

* fix(lint): resolve remaining module issues

* fix(scan): resolve semgrep findings

* fix(ci): remove deleted pay service from matrix
2026-07-27 14:45:50 +08:00

69 lines
1.3 KiB
Go

package main
import (
"context"
"flag"
"fmt"
"log"
"net"
"net/http"
"os"
"time"
launchpadServer "github.com/labring/sealos/service/launchpad/server"
)
type RestartableServer struct {
configFile string
}
func (rs *RestartableServer) Serve(c *launchpadServer.Config) {
vs, err := launchpadServer.NewVMServer(c)
if err != nil {
fmt.Printf("Failed to create auth server: %s\n", err)
return
}
hs := &http.Server{
Addr: c.Server.ListenAddress,
Handler: vs,
ReadHeaderTimeout: 10 * time.Second,
}
var listener net.Listener
listenerConfig := net.ListenConfig{}
listener, err = listenerConfig.Listen(context.Background(), "tcp", c.Server.ListenAddress)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("Serve on %s\n", c.Server.ListenAddress)
if err := hs.Serve(listener); err != nil {
fmt.Println(err)
return
}
}
func main() {
log.SetOutput(os.Stdout) // 将日志输出定向到标准输出(stdout)
log.SetFlags(log.LstdFlags | log.Lshortfile)
flag.Parse()
cf := flag.Arg(0)
if cf == "" {
fmt.Println("Config file not sepcified")
return
}
config, err := launchpadServer.InitConfig(cf)
if err != nil {
fmt.Println(err)
return
}
rs := RestartableServer{
configFile: cf,
}
rs.Serve(config)
}