Add let's encrypt support

This commit is contained in:
Jonathan Leibiusky @xetorthio
2017-08-30 10:31:26 -03:00
parent beec1628be
commit fc3dfa6844
2 changed files with 36 additions and 3 deletions

View File

@@ -2,6 +2,7 @@ package config
import (
"flag"
"fmt"
"os"
"regexp"
"time"
@@ -21,11 +22,26 @@ var NameFilter = regexp.MustCompile(PWDHostPortGroupRegex)
var AliasFilter = regexp.MustCompile(AliasPortGroupRegex)
var SSLPortNumber, PortNumber, Key, Cert, SessionsFile, PWDContainerName, L2ContainerName, L2Subdomain, PWDCName, HashKey, SSHKeyPath, L2RouterIP string
var UseLetsEncrypt bool
var LetsEncryptCertsDir string
var LetsEncryptDomains stringslice
var MaxLoadAvg float64
type stringslice []string
func (i *stringslice) String() string {
return fmt.Sprintf("%s", *i)
}
func (i *stringslice) Set(value string) error {
*i = append(*i, value)
return nil
}
func ParseFlags() {
flag.Var(&LetsEncryptDomains, "letsencrypt-domain", "List of domains to validate with let's encrypt")
flag.StringVar(&LetsEncryptCertsDir, "letsencrypt-certs-dir", "/certs", "Path where let's encrypt certs will be stored")
flag.BoolVar(&UseLetsEncrypt, "use-letsencrypt", false, "Enabled let's encrypt tls certificates")
flag.StringVar(&PortNumber, "port", "3000", "Give a TCP port to run the application")
flag.StringVar(&SSLPortNumber, "sslPort", "3001", "Give a SSL TCP port")
flag.StringVar(&Key, "key", "./pwd/server-key.pem", "Server key for SSL")
flag.StringVar(&Cert, "cert", "./pwd/server.pem", "Give a SSL cert")
flag.StringVar(&SessionsFile, "save", "./pwd/sessions", "Tell where to store sessions file")