diff options
Diffstat (limited to 'vendor/github.com/GeertJohan/go.rice/rice/flags.go')
-rw-r--r-- | vendor/github.com/GeertJohan/go.rice/rice/flags.go | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/vendor/github.com/GeertJohan/go.rice/rice/flags.go b/vendor/github.com/GeertJohan/go.rice/rice/flags.go deleted file mode 100644 index 167fea80..00000000 --- a/vendor/github.com/GeertJohan/go.rice/rice/flags.go +++ /dev/null @@ -1,80 +0,0 @@ -package main - -import ( - "fmt" - "go/build" - "os" - - goflags "github.com/jessevdk/go-flags" // rename import to `goflags` (file scope) so we can use `var flags` (package scope) -) - -// flags -var flags struct { - Verbose bool `long:"verbose" short:"v" description:"Show verbose debug information"` - ImportPaths []string `long:"import-path" short:"i" description:"Import path(s) to use. Using PWD when left empty. Specify multiple times for more import paths to append"` - - Append struct { - Executable string `long:"exec" description:"Executable to append" required:"true"` - } `command:"append"` - - EmbedGo struct{} `command:"embed-go" alias:"embed"` - EmbedSyso struct{} `command:"embed-syso"` - Clean struct{} `command:"clean"` -} - -// flags parser -var flagsParser *goflags.Parser - -// initFlags parses the given flags. -// when the user asks for help (-h or --help): the application exists with status 0 -// when unexpected flags is given: the application exits with status 1 -func parseArguments() { - // create flags parser in global var, for flagsParser.Active.Name (operation) - flagsParser = goflags.NewParser(&flags, goflags.Default) - - // parse flags - args, err := flagsParser.Parse() - if err != nil { - // assert the err to be a flags.Error - flagError := err.(*goflags.Error) - if flagError.Type == goflags.ErrHelp { - // user asked for help on flags. - // program can exit successfully - os.Exit(0) - } - if flagError.Type == goflags.ErrUnknownFlag { - fmt.Println("Use --help to view available options.") - os.Exit(1) - } - if flagError.Type == goflags.ErrRequired { - os.Exit(1) - } - fmt.Printf("Error parsing flags: %s\n", err) - os.Exit(1) - } - - // error on left-over arguments - if len(args) > 0 { - fmt.Printf("Unexpected arguments: %s\nUse --help to view available options.", args) - os.Exit(1) - } - - // default ImportPath to pwd when not set - if len(flags.ImportPaths) == 0 { - pwd, err := os.Getwd() - if err != nil { - fmt.Printf("error getting pwd: %s\n", err) - os.Exit(1) - } - verbosef("using pwd as import path\n") - // find non-absolute path for this pwd - pkg, err := build.ImportDir(pwd, build.FindOnly) - if err != nil { - fmt.Printf("error using current directory as import path: %s\n", err) - os.Exit(1) - } - flags.ImportPaths = append(flags.ImportPaths, pkg.ImportPath) - verbosef("using import paths: %s\n", flags.ImportPaths) - return - } -} |