gopkg.in/frapposelli/wwhrd.v0@v0.2.1/wwhrd.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "os" 6 7 "github.com/jessevdk/go-flags" 8 log "github.com/sirupsen/logrus" 9 ) 10 11 // Initialize and run wwhrd 12 func main() { 13 parser := newCli() 14 c, err := parser.Parse() 15 if err != nil { 16 if _, ok := err.(*flags.Error); ok { 17 typ := err.(*flags.Error).Type 18 switch { 19 case typ == VersionHelp: 20 fmt.Println(err.(*flags.Error).Message) 21 case typ == flags.ErrHelp: 22 parser.WriteHelp(os.Stdout) 23 case typ == flags.ErrCommandRequired && len(c[0]) == 0: 24 parser.WriteHelp(os.Stdout) 25 default: 26 log.Info(err.Error() + string(typ)) 27 parser.WriteHelp(os.Stdout) 28 } 29 } else { 30 log.Fatalf("Exiting: %s", err.Error()) 31 } 32 } 33 }