func main()

in cmd/spigot/main.go [37:74]


func main() {
	var cfgFile string
	var randomize bool

	flag.StringVar(&cfgFile, "c", "./spigot.yml", "path to configuration file")
	flag.BoolVar(&randomize, "r", false, "seed random number generator with current time")
	flag.Parse()

	c := Config{}
	cfg, err := yaml.NewConfigWithFile(cfgFile, ucfg.PathSep("."))
	if err != nil {
		panic(err)
	}
	err = cfg.Unpack(&c)
	if err != nil {
		panic(err)
	}

	if randomize {
		rand.Seed(time.Now().UnixNano())
	}

	resultCh := make(chan Result)

	for _, rCfg := range c.Runners {
		rCfg := rCfg
		go func() {
			execute_runner(rCfg, resultCh)
		}()
	}

	for i := 0; i < len(c.Runners); i++ {
		r := <-resultCh
		if !r.Done {
			panic(r.Error)
		}
	}
}