package main import ( "errors" "log" "net/http" "cmbuyer/admin/internal/auth" "cmbuyer/admin/internal/config" "cmbuyer/admin/internal/server" ) const listenAddress = ":8080" func main() { if err := run(); err != nil { log.Fatal(err) } } func run() error { configuration, err := config.LoadFromEnv() if err != nil { return err } router, err := server.NewRouter(server.Options{ AdminUsername: configuration.AdminUsername, AdminPasswordBcrypt: configuration.AdminPasswordBcrypt, Sessions: auth.NewManager(configuration.SessionSecret, configuration.CookieSecure), }) if err != nil { return err } err = http.ListenAndServe(listenAddress, router) if errors.Is(err, http.ErrServerClosed) { return nil } return err }