package main import ( "flag" "fmt" "time" "dim13.org/acme" ) type Domains []string func (v Domains) String() string { return fmt.Sprint([]string(v)) } func (v *Domains) Set(s string) error { *v = append(*v, s); return nil } var ( baseDir = flag.String("basedir", "/etc/ssl", "Base directory for SSL files") graceTime = flag.Duration("gracetime", 24*7*time.Hour, "Renew grace time") keySize = flag.Int("keysize", 2048, "Private key size") provider = flag.String("provider", acme.LES, "Certificate provider (staging)") force = flag.Bool("force", false, "Forece renewal") listen = flag.String("listen", ":8080", "HTTP Solver") listenTLS = flag.String("listentls", ":8443", "TLS Solver") email = flag.String("email", "", "eMail addresses") domains = new(Domains) ) func init() { flag.Var(domains, "domain", "Domain list (multiple values)") flag.Parse() }