support TLS on the jsm command

Signed-off-by: R.I.Pienaar <rip@devco.net>
This commit is contained in:
R.I.Pienaar
2019-12-05 14:22:04 +01:00
committed by Derek Collison
parent 3e6a8f308e
commit 0aa80dc79c

View File

@@ -31,7 +31,7 @@ import (
var usageStr = `
Usage:
jsm [-s server] [-creds file] [command]
jsm [-s server] [-creds file] [-tlscert file] [-tlskey file] [-tlscacert file] [command]
Available Commands:
info # General account info
@@ -63,6 +63,9 @@ func main() {
var url = flag.String("s", nats.DefaultURL, "The NATS System URL")
var userCreds = flag.String("creds", "", "User Credentials File")
var showHelp = flag.Bool("h", false, "Show help message")
var tlsCert = flag.String("tlscert", "", "Client certificate file")
var tlsKey = flag.String("tlskey", "", "Client private key file")
var tlsCA = flag.String("tlscacert", "", "Client certificate CA for verification")
log.SetFlags(0)
flag.Usage = usage
@@ -85,6 +88,14 @@ func main() {
opts = append(opts, nats.UserCredentials(*userCreds))
}
if *tlsCert != "" && *tlsKey != "" {
opts = append(opts, nats.ClientCert(*tlsCert, *tlsKey))
}
if *tlsCA != "" {
opts = append(opts, nats.RootCAs(*tlsCA))
}
// Connect to NATS
nc, err := nats.Connect(*url, opts...)
if err != nil {