cmd/gondole/main.go
changeset 54 f1dbc4f4dbe3
parent 53 da5079cecc3c
child 55 59e1d6fb139f
equal deleted inserted replaced
53:da5079cecc3c 54:f1dbc4f4dbe3
     1 package main
       
     2 
       
     3 import (
       
     4 	"github.com/keltia/gondole"
       
     5 	"github.com/urfave/cli"
       
     6 	"log"
       
     7 	"os"
       
     8 )
       
     9 
       
    10 var (
       
    11 	fVerbose bool
       
    12     instance *gondole.Gondole
       
    13 	cnf      *gondole.Config
       
    14 )
       
    15 
       
    16 func Register(c *cli.Context) (err error) {
       
    17 
       
    18     instance, err = gondole.NewApp("gondole-cli", nil, gondole.NoRedirect)
       
    19 	return err
       
    20 }
       
    21 
       
    22 func init() {
       
    23 	cli.VersionFlag = cli.BoolFlag{Name: "version, V"}
       
    24 
       
    25 	cli.VersionPrinter = func(c *cli.Context) {
       
    26 		log.Printf("API wrapper: %s Mastodon CLI: %s\n", c.App.Version, gondole.APIVersion)
       
    27 	}
       
    28 }
       
    29 
       
    30 func main() {
       
    31 
       
    32 	app := cli.NewApp()
       
    33 	app.Name = "gondole"
       
    34 	app.Usage = "Mastodon CLI interface"
       
    35 	app.Author = "Ollivier Robert <roberto@keltia.net>"
       
    36 	app.Version = gondole.APIVersion
       
    37 	//app.HideVersion = true
       
    38 
       
    39 	app.Before = Register
       
    40 
       
    41 	app.Flags = []cli.Flag{
       
    42 		cli.BoolFlag{
       
    43 			Name:        "verbose,v",
       
    44 			Usage:       "verbose mode",
       
    45 			Destination: &fVerbose,
       
    46 		},
       
    47 	}
       
    48 	app.Run(os.Args)
       
    49 }