Documentation ¶
Overview ¶
*
- cmd.go - command line runner *
- @author Yaroslav Pogrebnyak <yyyaroslav@gmail.com>
*
- from-consul.go - pull config from consul and run *
- @author Yaroslav Pogrebnyak <yyyaroslav@gmail.com>
*
- from-file.go - pull config from file and run *
- @author Yaroslav Pogrebnyak <yyyaroslav@gmail.com>
*
- from-url.go - pull config from url and run *
- @author Yaroslav Pogrebnyak <yyyaroslav@gmail.com>
*
- root.go - root cmd emulates from-file TODO: remove when time will come *
- @author Yaroslav Pogrebnyak <yyyaroslav@gmail.com>
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var FromConsulCmd = &cobra.Command{ Use: "from-consul <host:port>", Short: "Start using config from Consul", Long: `Start using config from the Consul key-value storage`, Run: func(cmd *cobra.Command, args []string) { if len(args) != 1 { cmd.Help() return } consulConfig.Address = args[0] client, err := consul.NewClient(&consulConfig) if err != nil { log.Fatal(err) } pair, _, err := client.KV().Get(consulKey, nil) if err != nil { log.Fatal(err) } if pair == nil { log.Fatal("Empty value for key " + consulKey) } var cfg config.Config if err := codec.Decode(string(pair.Value), &cfg, format); err != nil { log.Fatal(err) } info.Configuration = struct { Kind string `json:"kind"` Host string `json:"host"` Key string `json:"key"` }{"consul", consulConfig.Address, consulKey} start(&cfg) }, }
*
- FromConsul command
View Source
var FromFileCmd = &cobra.Command{ Use: "from-file <path>", Short: "Start using config from file", Run: func(cmd *cobra.Command, args []string) { if len(args) != 1 { cmd.Help() return } data, err := ioutil.ReadFile(args[0]) if err != nil { log.Fatal(err) } var cfg config.Config if err = codec.Decode(string(data), &cfg, format); err != nil { log.Fatal(err) } info.Configuration = struct { Kind string `json:"kind"` Path string `json:"path"` }{"file", args[0]} start(&cfg) }, }
*
- FromFile Command
View Source
var FromUrlCmd = &cobra.Command{ Use: "from-url <url>", Short: "Start using config from URL", Run: func(cmd *cobra.Command, args []string) { if len(args) != 1 { cmd.Help() return } client := http.Client{} res, err := client.Get(args[0]) if err != nil { log.Fatal(err) } defer res.Body.Close() content, err := ioutil.ReadAll(res.Body) if err != nil { log.Fatal(err) } var cfg config.Config if err := codec.Decode(string(content), &cfg, format); err != nil { log.Fatal(err) } info.Configuration = struct { Kind string `json:"kind"` Url string `json:"url"` }{"url", args[0]} start(&cfg) }, }
*
- FromUrlCmd command
View Source
var RootCmd = &cobra.Command{ Use: "gobetween", Short: "Modern & minimalistic load balancer for the Cloud era", Run: func(cmd *cobra.Command, args []string) { if showVersion { fmt.Println(info.Version) return } if configPath == "" { cmd.Help() return } FromFileCmd.Run(cmd, []string{configPath}) }, }
*
- Root Command
Functions ¶
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.