package main import ( "fmt" "log" "os" "os/signal" "syscall" "github.com/geo-platform/tenant-api/internal/bootstrap" "github.com/geo-platform/tenant-api/internal/tenant/transport" ) func main() { configPath := "configs/config.yaml" if p := os.Getenv("CONFIG_PATH"); p != "" { configPath = p } app, err := bootstrap.New(configPath) if err != nil { log.Fatalf("bootstrap: %v", err) } defer app.Close() transport.RegisterRoutes(app) addr := fmt.Sprintf(":%d", app.Config.Server.Port) app.Logger.Sugar().Infof("tenant-api starting on %s", addr) go func() { if err := app.Engine.Run(addr); err != nil { app.Logger.Sugar().Fatalf("server: %v", err) } }() quit := make(chan os.Signal, 1) signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM) <-quit app.Logger.Info("shutting down...") }