func main()

in runner/main.go [75:100]


func main() {
	testSpecs := flags.FlagStringList("test_spec", "path to a yaml or json file containing the test spec. Can be specified multiple times")
	vars := flags.FlagStringMap("var", "variable substitutions. Value should be key=value. Can be specified multiple times")
	flag.Parse()

	if len(*testSpecs) <= 0 {
		glog.Fatal("--test_spec must be specified")
	}

	status := testStatus{}
	for _, testSpec := range *testSpecs {
		glog.Infof(">>> Running %v", testSpec)
		suite := specs.LoadSuite(testSpec, specs.TemplateSpec{Var: *vars, Env: getEnvs()})
		if len(suite.Actions) <= 0 {
			glog.Info(" > Nothing to run!")
			continue
		}
		doRunActions(suite, &status)
	}
	if status.FailureCount > 0 {
		glog.Errorf(">>> SUMMARY: %d failed", status.FailureCount)
	} else {
		glog.Infof(">>> SUMMARY: All passed")
	}
	os.Exit(status.FailureCount)
}