GitHub - hashicorp/cli: A Go library for implementing command-line interfaces. (original) (raw)

Go CLI Library GoDoc

cli is a library for implementing command-line interfaces in Go. cli is the library that powers the CLI forPacker,Consul,Vault,Terraform,Nomad, and more.

Features

Example

Below is a simple example of creating and running a CLI

package main

import ( "log" "os"

"github.com/hashicorp/cli"

)

func main() { c := cli.NewCLI("app", "1.0.0") c.Args = os.Args[1:] c.Commands = map[string]cli.CommandFactory{ "foo": fooCommandFactory, "bar": barCommandFactory, }

exitStatus, err := c.Run()
if err != nil {
    log.Println(err)
}

os.Exit(exitStatus)

}