package main import ( "log" "os" "os/signal" "github.com/robfig/cron" ) func UpdateAll() { UpdateAuthors() log.Printf("*** FINISHED UPDATING AUTHORS ***") UpdateLetsTests() log.Printf("*** FINISHED UPDATING LETSTESTS ***") UpdateLetsPlays() log.Printf("*** FINISHED UPDATING LETSPLAYS ***") UpdateEpisodes() log.Printf("*** FINISHED UPDATING EPISODES ***") } func ParseAll() { ParseAuthors() log.Printf("*** FINISHED PARSING AUTHORS ***") ParseLetsTests() log.Printf("*** FINISHED PARSING LETSTESTS ***") ParseLetsPlays() log.Printf("*** FINISHED PARSING LETSPLAYS ***") ParseEpisodes() log.Printf("*** FINISHED PARSING EPISODES ***") } func StartCron() { c := cron.New() c.AddFunc("@every 1h", UpdateAll) c.AddFunc("@every 10m", ParseRSSFeeds) c.Start() } func MainLoop() { sig := make(chan os.Signal, 1) signal.Notify(sig) for true { s := <-sig if s == os.Kill || s == os.Interrupt { log.Printf("Quitting…") break } } wg.Wait() }