package main import ( "log" "net/http" "os" "ridgwaysystems.org/gitea-pr-reviewer/internal/deepseek" "ridgwaysystems.org/gitea-pr-reviewer/internal/gitea" "ridgwaysystems.org/gitea-pr-reviewer/internal/webhook" ) func main() { port := getenv("PORT", "9000") h := &webhook.Handler{ Gitea: gitea.New(mustenv("GITEA_URL"), mustenv("GITEA_TOKEN")), DeepSeek: deepseek.New(mustenv("DEEPSEEK_API_KEY")), WebhookSecret: os.Getenv("WEBHOOK_SECRET"), } mux := http.NewServeMux() mux.Handle("POST /webhook", h) log.Printf("gitea-pr-reviewer listening on :%s", port) log.Fatal(http.ListenAndServe(":"+port, mux)) } func getenv(key, def string) string { if v := os.Getenv(key); v != "" { return v } return def } func mustenv(key string) string { v := os.Getenv(key) if v == "" { log.Fatalf("required env var %s is not set", key) } return v }