cmd/report-aggregator/report-aggregator.go (27 lines of code) (raw):

package main import ( "log/slog" "os" "github.com/JetBrains/ij-perf-report-aggregator/pkg/server" "github.com/alecthomas/kingpin" ) func main() { app := kingpin.New("report-aggregator", "report-aggregator").Version("0.0.1") ConfigureServeCommand(app) _, err := app.Parse(os.Args[1:]) if err != nil { slog.Error("Cannon parse command line arguments", "err", err) os.Exit(1) } } func ConfigureServeCommand(app *kingpin.Application) { command := app.Command("serve", "Start aggregated stats server.") dbUrl := command.Flag("db", "The ClickHouse database URL.").Required().String() command.Action(func(_ *kingpin.ParseContext) error { err := server.Serve(*dbUrl, "") if err != nil { return err } return nil }) }