main.go 748 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package main
  2. import (
  3. "os"
  4. "github.com/cad/ovpm"
  5. "github.com/sirupsen/logrus"
  6. "github.com/urfave/cli"
  7. )
  8. var app = cli.NewApp()
  9. func main() {
  10. app.Run(os.Args)
  11. }
  12. func init() {
  13. app.Name = "ovpm"
  14. app.Usage = "OpenVPN Manager"
  15. app.Version = ovpm.Version
  16. app.Flags = []cli.Flag{
  17. cli.BoolFlag{
  18. Name: "verbose",
  19. Usage: "verbose output",
  20. },
  21. cli.IntFlag{
  22. Name: "daemon-port",
  23. Usage: "port number for OVPM daemon to call",
  24. },
  25. cli.BoolFlag{
  26. Name: "dry-run",
  27. Usage: "just validate command flags; not make any calls to the daemon behind",
  28. },
  29. }
  30. app.Before = func(c *cli.Context) error {
  31. logrus.SetLevel(logrus.InfoLevel)
  32. if c.GlobalBool("verbose") {
  33. logrus.SetLevel(logrus.DebugLevel)
  34. }
  35. return nil
  36. }
  37. }