func RunCustom(args []string, commands map[string]cli.CommandFactory) int { // Get the command line args. We shortcut "--version" and "-v" to // just show the version. for _, arg := range args { if arg == "-v" || arg == "-version" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } // Build the commands to include in the help now. This is pretty... // tedious, but we don't have a better way at the moment. commandsInclude := make([]string, 0, len(commands)) for k, _ := range commands { commandsInclude = append(commandsInclude, k) } cli := &cli.CLI{ Args: args, Commands: commands, HelpFunc: cli.FilteredHelpFunc(commandsInclude, HelpFunc), } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) return 1 } return exitCode }
func realMain() int { ui = &cli.BasicUi{Writer: os.Stdout} cli := &cli.CLI{ Args: os.Args[1:], Commands: map[string]cli.CommandFactory{ "up": func() (cli.Command, error) { return &UpCommand{}, nil }, "down": func() (cli.Command, error) { return &DownCommand{}, nil }, "redo": func() (cli.Command, error) { return &RedoCommand{}, nil }, "status": func() (cli.Command, error) { return &StatusCommand{}, nil }, }, HelpFunc: cli.BasicHelpFunc("sql-migrate"), Version: "1.0.0", } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) return 1 } return exitCode }
func run() int { // If there is no explicit number of Go threads to use, then set it if os.Getenv("GOMAXPROCS") == "" { runtime.GOMAXPROCS(runtime.NumCPU()) } // log.Printf("[INFO] Packer version: %s %s %s", Version, VersionPrerelease, GitCommit) log.Printf("Packer Target OS/Arch: %s %s", runtime.GOOS, runtime.GOARCH) log.Printf("Built with Go Version: %s", runtime.Version()) Ui = &ui.BasicUi{ Reader: os.Stdin, Writer: os.Stdout, ErrorWriter: os.Stdout, } args := os.Args[1:] cli := &cli.CLI{ Args: args, Commands: Commands, //HelpFunc: excludeHelpFunc(Commands, []string{"plugin"}), HelpWriter: os.Stdout, Version: version, } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err) return 1 } return exitCode }
func realMain() int { args := os.Args[1:] for _, arg := range args { if arg == "-v" || arg == "--version" { newArgs := make([]string, len(args)+1) copy(newArgs[1:], args) args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.BasicHelpFunc("Baggage"), } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) return 1 } return exitCode }
func main() { log.SetOutput(ioutil.Discard) args := os.Args[1:] for _, arg := range args { if arg == "--" { break } if arg == "-v" || arg == "--version" { fmt.Printf("%s v%s\n", Name, Version) os.Exit(0) } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.BasicHelpFunc("consulacl"), } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) os.Exit(1) } os.Exit(exitCode) }
func main() { args := os.Args[1:] // Get the command line args. We shortcut "--version" and "-v" to // just show the version. for _, arg := range args { if arg == "-v" || arg == "--version" { newArgs := make([]string, 1) newArgs[0] = "version" args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.BasicHelpFunc("sr6"), } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) os.Exit(1) } os.Exit(exitCode) }
func run() int { log.SetOutput(ioutil.Discard) args := os.Args[1:] for _, arg := range args { if arg == "-v" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) return 1 } return exitCode }
// main - run our app func main() { args := os.Args[1:] for _, arg := range args { if arg == "-v" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.BasicHelpFunc("cloudconfig"), } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) } os.Exit(exitCode) }
func realMain(args []string, commands map[string]cli.CommandFactory) int { for _, arg := range args { if arg == "-v" || arg == "-version" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } cmdNames := make([]string, 0, len(commands)) for cmdName := range commands { cmdNames = append(cmdNames, cmdName) } cli := &cli.CLI{ Args: args, Commands: commands, HelpFunc: cli.FilteredHelpFunc(cmdNames, cli.BasicHelpFunc("gypsy")), } exitCode, err := cli.Run() if err != nil { log.Warnf("Error executing CLI: %s", err.Error()) return 1 } return exitCode }
func RunCustom(args []string, commands map[string]cli.CommandFactory) int { // Get the command line args. We shortcut "--version" and "-v" to // just show the version. for _, arg := range args { if arg == "-v" || arg == "-version" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: commands, Version: Version, HelpFunc: cli.BasicHelpFunc(Name), HelpWriter: os.Stdout, } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Failed to execute: %s\n", err.Error()) } return exitCode }
// RunCustom execute mitchellh/cli and return its exit code. func RunCustom(args []string, commands map[string]cli.CommandFactory) int { for _, arg := range args { // If the following options are provided, // then execute gcli version command if arg == "-v" || arg == "-version" || arg == "--version" { args[1] = "version" break } // Generating godoc (doc.go). This is only for gcli developper. if arg == "-godoc" { return runGodoc(commands) } } cli := &cli.CLI{ Args: args[1:], Commands: commands, Version: Version, HelpFunc: cli.BasicHelpFunc(Name), HelpWriter: os.Stdout, } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Failed to execute: %s\n", err.Error()) } return exitCode }
func realMain() int { args := os.Args[1:] // Get the command line args. We shortcut "--version" and "-v" to // just show the version. // Copied from https://github.com/hashicorp/consul/blob/master/main.go for _, arg := range args { if arg == "-v" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.BasicHelpFunc("spark"), } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) return 1 } return exitCode }
// Just our main function to kick things off in a loop. func realMain() int { args := os.Args[1:] for _, arg := range args { if arg == "-v" || arg == "-version" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.FilteredHelpFunc( CommandsInclude, cli.BasicHelpFunc("consul-snapshot")), HelpWriter: os.Stdout, } exitCode, err := cli.Run() if err != nil { log.Fatalf("Error executing CLI: %s", err.Error()) return 1 } return exitCode }
func realMain() int { log.SetOutput(ioutil.Discard) // Get the command line args. We shortcut "--version" and "-v" to // just show the version. args := os.Args[1:] for _, arg := range args { if arg == "-v" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.BasicHelpFunc("consul"), } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) return 1 } return exitCode }
func main() { cli := cli.NewCLI("mirror", Version) cli.Args = os.Args[1:] cli.Commands = command.Commands exitStatus, err := cli.Run() if err != nil { fmt.Fprintln(os.Stderr, err.Error()) } os.Exit(exitStatus) }
func main() { cli := cli.NewCLI(strings.ToLower(APPLICATION_NAME), VERSION) cli.Args = os.Args[1:] cli.Commands = command.Commands exitStatus, err := cli.Run() if err != nil { fmt.Fprintln(os.Stderr, err.Error()) } os.Exit(exitStatus) }
func realMain() int { cli := &cli.CLI{ Args: os.Args[1:], Commands: Commands, } retval, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error running command: %s", err) return 1 } return retval }
func main() { cli := cli.NewCLI("stack-deploy", "0.3.5.2") cli.Args = os.Args[1:] cli.Commands = commands() exitCode, err := cli.Run() if err != nil { fmt.Printf("Error exiting CLI: %s\n", err) os.Exit(1) } os.Exit(exitCode) }
func wrappedMain() int { // Make sure we cleanup any plugins that were launched. defer plugin.CleanupClients() log.SetOutput(os.Stderr) log.Printf( "[INFO] Otto version: %s %s %s", Version, VersionPrerelease, GitCommit) // Setup signal handlers initSignalHandlers() // Load the configuration config := BuiltinConfig // Run checkpoint go runCheckpoint(&config) // Get the command line args. We shortcut "--version" and "-v" to // just show the version. args := os.Args[1:] for _, arg := range args { if arg == "-v" || arg == "-version" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.FilteredHelpFunc( CommandsInclude, cli.BasicHelpFunc("otto")), HelpWriter: os.Stdout, } exitCode, err := cli.Run() if err != nil { Ui.Error(fmt.Sprintf("Error executing CLI: %s", err.Error())) return 1 } return exitCode }
func realMain() int { cli := &cli.CLI{ Args: os.Args[1:], Commands: Commands, HelpFunc: cli.BasicHelpFunc("aneto"), HelpWriter: os.Stdout, Version: version.Version, } exitCode, err := cli.Run() if err != nil { Ui.Error(fmt.Sprintf("Error executing CLI: %s", err.Error())) return 1 } return exitCode }
func realMain() int { args := os.Args[1:] cli := &cli.CLI{ Name: "Depro", Version: Version, Commands: common.Commands(), Args: args, HelpFunc: cli.BasicHelpFunc("depro"), } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) return 1 } return exitCode }
func main() { args := os.Args[1:] handleCommandOutsideOfProjectDir(args) cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.BasicHelpFunc("fuel"), } exitStatus, err := cli.Run() if err != nil { log.Println(err) } os.Exit(exitStatus) }
func run() int { args := os.Args[1:] cli := &cli.CLI{ Args: args, Commands: command.Commands, HelpFunc: cli.BasicHelpFunc("screwdriver"), HelpWriter: os.Stdout, } exitCode, err := cli.Run() if err != nil { utils.ErrorOutput(err.Error()) return 1 } return exitCode }
func wrappedMain() int { log.SetOutput(os.Stderr) // Load the configuration config := BuiltinConfig // Make sure we clean up any managed plugins at the end of this defer plugin.CleanupClients() // Initialize the TFConfig settings for the commands... ContextOpts.Providers = config.ProviderFactories() ContextOpts.Provisioners = config.ProvisionerFactories() // Get the command line args. We shortcut "--version" and "-v" to // just show the version. args := os.Args[1:] for _, arg := range args { if arg == "-v" || arg == "-version" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.BasicHelpFunc("terraform"), HelpWriter: os.Stdout, } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) return 1 } return exitCode }
func main() { args := os.Args[1:] // Get the command line args. We shortcut "--version" and "-v" to // just show the version. for _, arg := range args { if arg == "-v" || arg == "--version" { newArgs := make([]string, 1) newArgs[0] = "version" args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.BasicHelpFunc("mixpanel"), } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) os.Exit(1) } os.Exit(exitCode) // config, err := api.DefaultConfig() // if err != nil { // log.Fatal(err) // } // q := &api.QueryOptions{ // Key: config.Key, // Secret: config.Secret, // Expire: "1445934932", // FromDate: "2015-01-02", // ToDate: "2015-01-02", // Format: "json", // } // client := api.NewClient(*config) // client.Export(q) }
func wrappedMain() int { log.SetOutput(os.Stderr) log.Printf("[INFO] KuuYee Otto version: %s %s %s", Version, VersionPrerelease, GitCommit) // 设置信号处理器 initSignalHandlers() // 载入配置 config := BuiltinConfig fmt.Printf("[KuuYee]====> config: %+v\n", config) // 运行检查点 go runCheckpoint(&config) // 获取命令行参数。通过"--version"和"-v"显示版本 args := os.Args[1:] for _, arg := range args { if arg == "-v" || arg == "-version" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.FilteredHelpFunc( CommandsInclude, cli.BasicHelpFunc("otto")), HelpWriter: os.Stdout, } exitCode, err := cli.Run() if err != nil { Ui.Error(fmt.Sprintf("Error executing CLI: %s", err.Error())) return 1 } return exitCode }
func RunCustom(args []string, commands map[string]cli.CommandFactory) int { // Get the command line args. We shortcut "--version" and "-v" to // just show the version. for _, arg := range args { if arg == "-v" || arg == "-version" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } // Build the commands to include in the help now. commandsInclude := make([]string, 0, len(commands)) for k, _ := range commands { switch k { case "executor": case "syslog": case "fs ls", "fs cat", "fs stat": case "check": default: commandsInclude = append(commandsInclude, k) } } cli := &cli.CLI{ Args: args, Commands: commands, HelpFunc: cli.FilteredHelpFunc(commandsInclude, cli.BasicHelpFunc("nomad")), } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) return 1 } return exitCode }
//DoMain runs the Xavi command line. This is packed as a reusable piece of code //to allow directives to be registered via import into a main program func DoMain(args []string, kvs kvstore.KVStore, writer io.Writer) int { if err := commandSetup(kvs, writer); err != nil { fmt.Println("Error setting up command line interface: ", err.Error()) return 1 } cli := &cli.CLI{ Args: args, Commands: xaviCommands, HelpFunc: cli.BasicHelpFunc("xavi"), HelpWriter: writer, } exitCode, err := cli.Run() if err != nil { fmt.Fprintf(os.Stderr, "Error executing CLI: %s\n", err.Error()) return 1 } return exitCode }
func main() { args := os.Args[1:] var err error Config, err = config.CreatePolkaHomeConfigAsNeeded() if err != nil { log.Panic(err) } handleCommandOutsideOfProjectDir(args) cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: cli.BasicHelpFunc("polka"), } exitStatus, err := cli.Run() if err != nil { log.Println(err) } os.Exit(exitStatus) }
func wrappedMain() int { log.SetOutput(os.Stderr) log.Printf( "[INFO] Terraform version: %s %s %s", Version, VersionPrerelease, GitCommit) log.Printf("[INFO] CLI args: %#v", os.Args) // Load the configuration config := BuiltinConfig if err := config.Discover(Ui); err != nil { Ui.Error(fmt.Sprintf("Error discovering plugins: %s", err)) return 1 } // Run checkpoint go runCheckpoint(&config) // Make sure we clean up any managed plugins at the end of this defer plugin.CleanupClients() // Get the command line args. We shortcut "--version" and "-v" to // just show the version. args := os.Args[1:] for _, arg := range args { if arg == "-v" || arg == "-version" || arg == "--version" { newArgs := make([]string, len(args)+1) newArgs[0] = "version" copy(newArgs[1:], args) args = newArgs break } } cli := &cli.CLI{ Args: args, Commands: Commands, HelpFunc: helpFunc, HelpWriter: os.Stdout, } // Load the configuration file if we have one, that can be used to // define extra providers and provisioners. clicfgFile, err := cliConfigFile() if err != nil { Ui.Error(fmt.Sprintf("Error loading CLI configuration: \n\n%s", err)) return 1 } if clicfgFile != "" { usrcfg, err := LoadConfig(clicfgFile) if err != nil { Ui.Error(fmt.Sprintf("Error loading CLI configuration: \n\n%s", err)) return 1 } config = *config.Merge(usrcfg) } // Initialize the TFConfig settings for the commands... ContextOpts.Providers = config.ProviderFactories() ContextOpts.Provisioners = config.ProvisionerFactories() exitCode, err := cli.Run() if err != nil { Ui.Error(fmt.Sprintf("Error executing CLI: %s", err.Error())) return 1 } return exitCode }