File: main.go

package info (click to toggle)
syncthing 0.14.18%2Bdfsg1-2
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 7,388 kB
  • ctags: 4,608
  • sloc: xml: 781; sh: 271; makefile: 45
file content (63 lines) | stat: -rw-r--r-- 1,329 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
// Copyright (C) 2014 Audrius Butkevičius

package main

import (
	"sort"

	"github.com/AudriusButkevicius/cli"
)

type ByAlphabet []cli.Command

func (a ByAlphabet) Len() int           { return len(a) }
func (a ByAlphabet) Swap(i, j int)      { a[i], a[j] = a[j], a[i] }
func (a ByAlphabet) Less(i, j int) bool { return a[i].Name < a[j].Name }

var cliCommands []cli.Command

func main() {
	app := cli.NewApp()
	app.Name = "syncthing-cli"
	app.Author = "Audrius Butkevičius"
	app.Email = "audrius.butkevicius@gmail.com"
	app.Usage = "Syncthing command line interface"
	app.Version = "0.1"
	app.HideHelp = true

	app.Flags = []cli.Flag{
		cli.StringFlag{
			Name:   "endpoint, e",
			Value:  "http://127.0.0.1:8384",
			Usage:  "End point to connect to",
			EnvVar: "STENDPOINT",
		},
		cli.StringFlag{
			Name:   "apikey, k",
			Value:  "",
			Usage:  "API Key",
			EnvVar: "STAPIKEY",
		},
		cli.StringFlag{
			Name:   "username, u",
			Value:  "",
			Usage:  "Username",
			EnvVar: "STUSERNAME",
		},
		cli.StringFlag{
			Name:   "password, p",
			Value:  "",
			Usage:  "Password",
			EnvVar: "STPASSWORD",
		},
		cli.BoolFlag{
			Name:   "insecure, i",
			Usage:  "Do not verify SSL certificate",
			EnvVar: "STINSECURE",
		},
	}

	sort.Sort(ByAlphabet(cliCommands))
	app.Commands = cliCommands
	app.RunAndExitOnError()
}