this repo has no description
1package main 2 3import ( 4 "context" 5 "fmt" 6 "log" 7 "log/slog" 8 "net/http" 9 "os" 10 11 "github.com/sotangled/tangled/knotserver" 12 "github.com/sotangled/tangled/knotserver/config" 13 "github.com/sotangled/tangled/knotserver/db" 14) 15 16func main() { 17 ctx := context.Background() 18 // ctx, stop := signal.NotifyContext(context.Background(), os.Interrupt, syscall.SIGTERM) 19 // defer stop() 20 21 slog.SetDefault(slog.New(slog.NewTextHandler(os.Stdout, nil))) 22 23 c, err := config.Load(ctx) 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(ctx, 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}