github.com/justinjmoses/evergreen@v0.0.0-20170530173719-1d50e381ff0d/cli/main/cli.go (about) 1 package main 2 3 import ( 4 "os" 5 6 "github.com/evergreen-ci/evergreen/cli" 7 "github.com/jessevdk/go-flags" 8 ) 9 10 func main() { 11 opts := cli.Options{} 12 var parser = flags.NewParser(&opts, flags.Default) 13 parser.AddCommand("get-update", "fetch the latest version of this binary", "", &cli.GetUpdateCommand{GlobalOpts: &opts}) 14 parser.AddCommand("version", "display version information", "", &cli.VersionCommand{}) 15 parser.AddCommand("set-module", "update or add module to an existing patch", "", &cli.SetModuleCommand{GlobalOpts: &opts}) 16 parser.AddCommand("patch", "submit a patch", "", 17 &cli.PatchCommand{PatchCommandParams: cli.PatchCommandParams{GlobalOpts: &opts}}) 18 parser.AddCommand("patch-file", "submit a patch using a diff file", "", 19 &cli.PatchFileCommand{PatchCommandParams: cli.PatchCommandParams{GlobalOpts: &opts}}) 20 parser.AddCommand("list-patches", "show existing patches", "", &cli.ListPatchesCommand{GlobalOpts: &opts}) 21 parser.AddCommand("rm-module", "remove a module from an existing patch", "", &cli.RemoveModuleCommand{GlobalOpts: &opts}) 22 parser.AddCommand("cancel-patch", "cancel an existing patch", "", &cli.CancelPatchCommand{GlobalOpts: &opts}) 23 parser.AddCommand("finalize-patch", "finalize an existing patch", "", &cli.FinalizePatchCommand{GlobalOpts: &opts}) 24 parser.AddCommand("list", "list available projects, tasks, or variants", "", &cli.ListCommand{GlobalOpts: &opts}) 25 parser.AddCommand("last-green", "return a project's most recent successful version for given variants", "", &cli.LastGreenCommand{GlobalOpts: &opts}) 26 parser.AddCommand("validate", "validate a config file", "", &cli.ValidateCommand{GlobalOpts: &opts}) 27 parser.AddCommand("evaluate", "display a project file's evaluated and expanded form", "", &cli.EvaluateCommand{}) 28 parser.AddCommand("fetch", "fetch data associated with a task", "", &cli.FetchCommand{GlobalOpts: &opts}) 29 parser.AddCommand("export", "export statistics as csv or json for given options", "", &cli.ExportCommand{GlobalOpts: &opts}) 30 parser.AddCommand("test-history", "retrieve test history for a given project", "", &cli.TestHistoryCommand{GlobalOpts: &opts}) 31 32 _, err := parser.Parse() 33 if err != nil { 34 os.Exit(1) 35 } 36 }