func main() { runtime.GOMAXPROCS(runtime.NumCPU()) info_log = log.New(os.Stdout, "", log.LstdFlags) error_log = log.New(os.Stderr, "", log.LstdFlags) flagConf := flag.String("conf", "config.json", "") flagAddr := flag.String("addr", ":6080", "") flagDev := flag.Bool("dev", false, "") flag.Parse() var cfg config.Config if err := cfg.LoadFromFile(*flagConf); err != nil { panic(err) } // It's not safe to be killed during makeSearchers, so register the // shutdown signal here and defer processing it until we are ready. shutdownCh := registerShutdownSignal() idx, ok, err := makeSearchers(&cfg) if err != nil { log.Panic(err) } if !ok { info_log.Println("Some repos failed to index, see output above") } else { info_log.Println("All indexes built!") } handleShutdown(shutdownCh, idx) host := *flagAddr if strings.HasPrefix(host, ":") { host = "localhost" + host } info_log.Printf("running server at http://%s...\n", host) if err := runHttp(*flagAddr, *flagDev, &cfg, idx); err != nil { panic(err) } }
func main() { runtime.GOMAXPROCS(runtime.NumCPU()) info_log = log.New(os.Stdout, "", log.LstdFlags) error_log = log.New(os.Stderr, "", log.LstdFlags) flagConf := flag.String("conf", "config.json", "") flagAddr := flag.String("addr", ":6080", "") flagDev := flag.Bool("dev", false, "") flag.Parse() var cfg config.Config if err := cfg.LoadFromFile(*flagConf); err != nil { panic(err) } idx, ok, err := makeSearchers(&cfg) if err != nil { log.Panic(err) } if !ok { info_log.Println("Some repos failed to index, see output above") } else { info_log.Println("All indexes built!") } host := *flagAddr if strings.HasPrefix(host, ":") { host = "localhost" + host } info_log.Printf("running server at http://%s...\n", host) if err := runHttp(*flagAddr, *flagDev, &cfg, idx); err != nil { panic(err) } }