this repo has no description
1package main 2 3import ( 4 "flag" 5 "fmt" 6 "log" 7 "log/slog" 8 "net/http" 9 "os" 10 11 "github.com/icyphox/bild/config" 12 "github.com/icyphox/bild/db" 13 "github.com/icyphox/bild/knotserver" 14) 15 16func main() { 17 var cfg string 18 flag.StringVar(&cfg, "config", "./config.yaml", "path to config file") 19 flag.Parse() 20 21 slog.SetDefault(slog.New(slog.NewTextHandler(os.Stdout, nil))) 22 23 c, err := config.Read(cfg) 24 if err != nil { 25 log.Fatal(err) 26 } 27 db, err := db.Setup(c.Server.DBPath) 28 if err != nil { 29 log.Fatalf("failed to setup db: %s", err) 30 } 31 32 mux, err := knotserver.Setup(c, db) 33 if err != nil { 34 log.Fatal(err) 35 } 36 37 addr := fmt.Sprintf("%s:%d", c.Server.Host, c.Server.Port) 38 39 log.Println("starting main server on", addr) 40 log.Fatal(http.ListenAndServe(addr, mux)) 41}