Skip to content

Commit be36c1f

Browse files
committed
Parse CLI flags/commands, load config, set up servers and go routines, start logging, get users and triggers.
1 parent 69ff052 commit be36c1f

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

main.go

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package main
2+
3+
import (
4+
"os"
5+
"os/signal"
6+
"syscall"
7+
"time"
8+
)
9+
10+
func main() {
11+
parseFlags()
12+
loadConfig()
13+
initChannels()
14+
openLogs()
15+
defer closeLogs()
16+
loadUsers(cfg.Users)
17+
loadTriggers(cfg.Triggers)
18+
startJanitor()
19+
20+
c := make(chan os.Signal, 1)
21+
signal.Notify(c, os.Interrupt, syscall.SIGTERM)
22+
go func() {
23+
<-c
24+
Channels.janitorquit <- true
25+
Channels.mainquit <- true
26+
}()
27+
28+
initWeb()
29+
<-Channels.mainquit
30+
info("Quit signal received. Shutting down.")
31+
go stopServers()
32+
time.Sleep(time.Millisecond * 500)
33+
return
34+
}

0 commit comments

Comments
 (0)