Merge pull request #1951 from jlsalvador/patch-1

etcdctl: add environment support to certs args
This commit is contained in:
Kelsey Hightower 2014-12-17 15:53:59 -08:00
commit aea87bc88d

View File

@ -91,10 +91,26 @@ func getEndpoints(c *cli.Context) ([]string, error) {
} }
func getTransport(c *cli.Context) (*http.Transport, error) { func getTransport(c *cli.Context) (*http.Transport, error) {
cafile := c.GlobalString("ca-file")
certfile := c.GlobalString("cert-file")
keyfile := c.GlobalString("key-file")
// Use an environment variable if nothing was supplied on the
// command line
if cafile == "" {
cafile = os.Getenv("ETCDCTL_CA_FILE")
}
if certfile == "" {
certfile = os.Getenv("ETCDCTL_CERT_FILE")
}
if keyfile == "" {
keyfile = os.Getenv("ETCDCTL_KEY_FILE")
}
tls := transport.TLSInfo{ tls := transport.TLSInfo{
CAFile: c.GlobalString("ca-file"), CAFile: cafile,
CertFile: c.GlobalString("cert-file"), CertFile: certfile,
KeyFile: c.GlobalString("key-file"), KeyFile: keyfile,
} }
return transport.NewTransport(tls) return transport.NewTransport(tls)