Initial commit

This commit is contained in:
Victor Lacasse-Beaudoin 2025-02-27 14:13:21 -05:00
commit 02947128bc
24 changed files with 1126 additions and 0 deletions

42
flag.go Normal file
View file

@ -0,0 +1,42 @@
package main
import (
"github.com/spf13/pflag"
"github.com/spf13/viper"
)
const (
configPort = "Port"
defaultPort = 8080
flagPort = "port"
configTLSCert = "TLS.Cert"
defaultTLSCert = ""
flagTLSCert = "tls-cert"
configTLSKey = "TLS.Key"
defaultTLSKey = ""
flagTLSKey = "tls-key"
)
// BindClientFlags declares client-related flags and config options in the specified *pflag.FlagSet
func BindFlags(set *pflag.FlagSet) error {
// Credentials -> seulement par config
set.Int(flagPort, defaultPort, "User interface port")
if err := viper.BindPFlag(configPort, set.Lookup(flagPort)); err != nil {
return err
}
set.String(flagTLSKey, defaultTLSKey, "User interface TLS private key (or path to file)")
if err := viper.BindPFlag(configTLSKey, set.Lookup(flagTLSKey)); err != nil {
return err
}
set.String(flagTLSCert, defaultTLSCert, "User interface TLS certificate (or path to file)")
if err := viper.BindPFlag(configTLSCert, set.Lookup(flagTLSCert)); err != nil {
return err
}
return nil
}