From 43ac0cdb9c4eea9d3c5eceb2c11b9e5b98b87b00 Mon Sep 17 00:00:00 2001 From: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com> Date: Mon, 30 May 2022 13:41:24 +0100 Subject: [chore] Global server configuration overhaul (#575) * move config flag names and usage to config package, rewrite config package to use global Configuration{} struct Signed-off-by: kim * improved code comment Signed-off-by: kim * linter Signed-off-by: kim * fix unmarshaling Signed-off-by: kim * remove kim's custom go compiler changes Signed-off-by: kim * generate setter and flag-name functions, implement these in codebase Signed-off-by: kim * update deps Signed-off-by: kim * small change Signed-off-by: kim * appease the linter... Signed-off-by: kim * move configuration into ConfigState structure, ensure reloading to/from viper settings to keep in sync Signed-off-by: kim * lint Signed-off-by: kim * update code comments Signed-off-by: kim * fix merge issue Signed-off-by: kim * fix merge issue Signed-off-by: kim * improved version string (removes time + go version) Signed-off-by: kim * fix version string build to pass test script + consolidate logic in func Signed-off-by: kim * add license text, update config.Defaults comment Signed-off-by: kim * add license text to generated config helpers file Signed-off-by: kim * defer unlock on config.Set___(), to ensure unlocked on panic Signed-off-by: kim * make it more obvious which cmd flags are being attached Signed-off-by: kim --- internal/email/confirm.go | 3 +-- internal/email/noopsender.go | 3 +-- internal/email/sender.go | 15 ++++++--------- 3 files changed, 8 insertions(+), 13 deletions(-) (limited to 'internal/email') diff --git a/internal/email/confirm.go b/internal/email/confirm.go index 34e2fb660..b49004056 100644 --- a/internal/email/confirm.go +++ b/internal/email/confirm.go @@ -23,7 +23,6 @@ import ( "net/smtp" "github.com/sirupsen/logrus" - "github.com/spf13/viper" "github.com/superseriousbusiness/gotosocial/internal/config" ) @@ -43,7 +42,7 @@ func (s *sender) SendConfirmEmail(toAddress string, data ConfirmData) error { if err != nil { return err } - logrus.WithField("func", "SendConfirmEmail").Trace(s.hostAddress + "\n" + viper.GetString(config.Keys.SMTPUsername) + ":password" + "\n" + s.from + "\n" + toAddress + "\n\n" + string(msg) + "\n") + logrus.WithField("func", "SendConfirmEmail").Trace(s.hostAddress + "\n" + config.GetSMTPUsername() + ":password" + "\n" + s.from + "\n" + toAddress + "\n\n" + string(msg) + "\n") return smtp.SendMail(s.hostAddress, s.auth, s.from, []string{toAddress}, msg) } diff --git a/internal/email/noopsender.go b/internal/email/noopsender.go index 9f587f319..9aab1ca41 100644 --- a/internal/email/noopsender.go +++ b/internal/email/noopsender.go @@ -23,7 +23,6 @@ import ( "text/template" "github.com/sirupsen/logrus" - "github.com/spf13/viper" "github.com/superseriousbusiness/gotosocial/internal/config" ) @@ -32,7 +31,7 @@ import ( // // Passing a nil function is also acceptable, in which case the send functions will just return nil. func NewNoopSender(sendCallback func(toAddress string, message string)) (Sender, error) { - templateBaseDir := viper.GetString(config.Keys.WebTemplateBaseDir) + templateBaseDir := config.GetWebTemplateBaseDir() t, err := loadTemplates(templateBaseDir) if err != nil { diff --git a/internal/email/sender.go b/internal/email/sender.go index f44627496..18372ab47 100644 --- a/internal/email/sender.go +++ b/internal/email/sender.go @@ -23,7 +23,6 @@ import ( "net/smtp" "text/template" - "github.com/spf13/viper" "github.com/superseriousbusiness/gotosocial/internal/config" ) @@ -38,19 +37,17 @@ type Sender interface { // NewSender returns a new email Sender interface with the given configuration, or an error if something goes wrong. func NewSender() (Sender, error) { - keys := config.Keys - - templateBaseDir := viper.GetString(keys.WebTemplateBaseDir) + templateBaseDir := config.GetWebTemplateBaseDir() t, err := loadTemplates(templateBaseDir) if err != nil { return nil, err } - username := viper.GetString(keys.SMTPUsername) - password := viper.GetString(keys.SMTPPassword) - host := viper.GetString(keys.SMTPHost) - port := viper.GetInt(keys.SMTPPort) - from := viper.GetString(keys.SMTPFrom) + username := config.GetSMTPUsername() + password := config.GetSMTPPassword() + host := config.GetSMTPHost() + port := config.GetSMTPPort() + from := config.GetSMTPFrom() return &sender{ hostAddress: fmt.Sprintf("%s:%d", host, port), -- cgit v1.2.3