From 45b5a1f0d57668cccf0ea5330f012ce7ba56d84e Mon Sep 17 00:00:00 2001 From: Computroniks Date: Mon, 7 Mar 2022 20:56:39 +0000 Subject: [PATCH] Added DB command line flags Flags relating to databases Signed-off-by: Computroniks --- main.go | 18 ++++++++++++++++++ util/config.go | 6 ++++++ 2 files changed, 24 insertions(+) diff --git a/main.go b/main.go index 99e0460..a63148d 100644 --- a/main.go +++ b/main.go @@ -35,6 +35,12 @@ var ( flagEmailFrom string flagEmailFromName string = "WireGuard UI" flagSessionSecret string + flagDBType string = "jsondb" + flagDBHost string = "localhost" + flagDBPort int = 3306 + flagDBDatabase string = "wireguard-ui" + flagDBUsername string + flagDBPassword string ) const ( @@ -61,6 +67,12 @@ func init() { flag.StringVar(&flagEmailFrom, "email-from", util.LookupEnvOrString("EMAIL_FROM_ADDRESS", flagEmailFrom), "'From' email address.") flag.StringVar(&flagEmailFromName, "email-from-name", util.LookupEnvOrString("EMAIL_FROM_NAME", flagEmailFromName), "'From' email name.") flag.StringVar(&flagSessionSecret, "session-secret", util.LookupEnvOrString("SESSION_SECRET", flagSessionSecret), "The key used to encrypt session cookies.") + flag.StringVar(&flagDBType, "db-type", util.LookupEnvOrString("DB_TYPE", flagDBType), "Type of database to use. One of: `jsondb`|`mysql`.") + flag.StringVar(&flagDBHost, "db-host", util.LookupEnvOrString("DB_HOST", flagDBHost), "Database host") + flag.IntVar(&flagDBPort, "db-port", util.LookupEnvOrInt("DB_PORT", flagDBPort), "Database port") + flag.StringVar(&flagDBDatabase, "db-database", util.LookupEnvOrString("DB_DATABASE", flagDBDatabase), "Database name") + flag.StringVar(&flagDBUsername, "db-username", util.LookupEnvOrString("DB_USERNAME", flagDBUsername), "Database username") + flag.StringVar(&flagDBPassword, "db-password", util.LookupEnvOrString("DB_PASSWORD", flagDBPassword), "Database password") flag.Parse() // update runtime config @@ -76,6 +88,12 @@ func init() { util.EmailFrom = flagEmailFrom util.EmailFromName = flagEmailFromName util.SessionSecret = []byte(flagSessionSecret) + util.DBType = flagDBType + util.DBHost = flagDBHost + util.DBPort = flagDBPort + util.DBDatabase = flagDBDatabase + util.DBUsername = flagDBUsername + util.DBPassword = flagDBPassword // print app information fmt.Println("Wireguard UI") diff --git a/util/config.go b/util/config.go index 80cbc9c..8423d17 100644 --- a/util/config.go +++ b/util/config.go @@ -16,6 +16,12 @@ var ( EmailSubject string EmailContent string SessionSecret []byte + DBType string + DBHost string + DBPort int + DBDatabase string + DBUsername string + DBPassword string ) const (