Files
CaddyProxyManager/backend/cmd/main.go
Pacerino 2bc7cd5a98 [Backend] Wire providers/auth into API and add startup bootstrap
Route host changes through the selected Caddy provider, add auth routes
and the frontend-dir serving toggle, seed a default admin user on first
run, and validate space/comma separated domain lists via a custom
validator. Includes validator tests.
2026-06-14 02:35:28 +02:00

43 lines
920 B
Go

package main
import (
"os"
"os/signal"
"syscall"
"github.com/Pacerino/CaddyProxyManager/internal/api"
"github.com/Pacerino/CaddyProxyManager/internal/auth"
"github.com/Pacerino/CaddyProxyManager/internal/config"
"github.com/Pacerino/CaddyProxyManager/internal/database"
"github.com/Pacerino/CaddyProxyManager/internal/jobqueue"
"github.com/Pacerino/CaddyProxyManager/internal/logger"
)
var (
version = "3.0.0"
commit = "abcdefgh"
)
func main() {
config.Init(&version, &commit)
if err := auth.EnsureKey(); err != nil {
logger.Error("KeyBootstrapError", err)
}
database.NewDB()
jobqueue.Start()
// HTTP Server
api.StartServer()
// Clean Quit
irqchan := make(chan os.Signal, 1)
signal.Notify(irqchan, syscall.SIGINT, syscall.SIGTERM)
for irq := range irqchan {
if irq == syscall.SIGINT || irq == syscall.SIGTERM {
logger.Info("Got ", irq, " shutting server down ...")
break
}
}
}