package main import ( "flag" "log" "os" "os/signal" "gitlab.com/whom/bingobot/internal/config" "gitlab.com/whom/bingobot/internal/discord" "gitlab.com/whom/bingobot/internal/logging" ) var ( token = flag.String("token", "", "Bot authentication token") ) func main() { flag.Parse() var err error err = config.Init() if err != nil { log.Fatal(err) } logging.Init() err = startBot() if err != nil { log.Fatal(err) } } func startBot() error { err := discord.Connect(*token) if err != nil { return err } sigch := make(chan os.Signal, 1) signal.Notify(sigch, os.Interrupt) <-sigch logging.Info("shutting down gracefully", "type", "shutdown") discord.Close() return nil }