43 lines
686 B
Go
43 lines
686 B
Go
package main
|
|
|
|
import (
|
|
"local/rssmon3/copart/config"
|
|
"local/rssmon3/copart/server"
|
|
"log"
|
|
"os"
|
|
"os/signal"
|
|
"syscall"
|
|
"time"
|
|
)
|
|
|
|
func main() {
|
|
log.SetPrefix("..")
|
|
time.Local = time.FixedZone("UTC-6", (-6*int(time.Hour))/int(time.Second))
|
|
sigc := make(chan os.Signal)
|
|
|
|
if err := config.New(); err != nil {
|
|
panic(err)
|
|
}
|
|
log.Println(config.Values())
|
|
|
|
s := server.New()
|
|
if err := s.Routes(); err != nil {
|
|
panic(err)
|
|
}
|
|
go func(c chan os.Signal) {
|
|
if err := s.Run(); err != nil {
|
|
log.Println(err)
|
|
}
|
|
c <- syscall.SIGINT
|
|
}(sigc)
|
|
|
|
signal.Notify(sigc,
|
|
syscall.SIGHUP,
|
|
syscall.SIGINT,
|
|
syscall.SIGTERM,
|
|
syscall.SIGQUIT,
|
|
)
|
|
<-sigc
|
|
config.Values().DB.Close()
|
|
}
|