This commit is contained in:
fabio
2026-02-22 17:39:36 +01:00
parent be462b814c
commit ae48383dc8
13 changed files with 359 additions and 3 deletions

View File

@@ -54,6 +54,7 @@ type SMTPConfig struct {
Username string
Password string
From string
FromName string
}
func Load() (*Config, error) {
@@ -77,7 +78,7 @@ func Load() (*Config, error) {
Credentials: envBoolOrDefault("CORS_CREDENTIALS", true),
},
SessionKey: envOrDefault("SESSION_KEY", "change-me-in-prod"),
EmailSinkDir: envOrDefault("EMAIL_SINK_DIR", "data/email-sink"),
EmailSinkDir: envOrDefault("EMAIL_SINK_DIR", "data/emails"),
AutoMigrate: envBoolOrDefault("AUTO_MIGRATE", true),
SeedEnabled: envBoolOrDefault("SEED_ENABLED", false),
SMTP: SMTPConfig{
@@ -86,6 +87,7 @@ func Load() (*Config, error) {
Username: strings.TrimSpace(os.Getenv("SMTP_USERNAME")),
Password: strings.TrimSpace(os.Getenv("SMTP_PASSWORD")),
From: envOrDefault("SMTP_FROM", "noreply@example.test"),
FromName: envOrDefault("SMTP_FROM_NAME", "Trustcontact"),
},
}
@@ -132,6 +134,10 @@ func (c *Config) Validate() error {
return errors.New("SMTP_PORT must be > 0")
}
if strings.TrimSpace(c.SMTP.From) == "" {
return errors.New("SMTP_FROM is required")
}
if strings.TrimSpace(c.EmailSinkDir) == "" {
return errors.New("EMAIL_SINK_DIR is required")
}