forked from forgejo/forgejo
Make log mailer for testing (#5893)
* Create log mailer for testing email settings Signed-off-by: Andrew Thornton <art27@cantab.net> * Switch on the log mailer for the integration tests This ensures that the sending mail process works Signed-off-by: Andrew Thornton <art27@cantab.net> * rename the from user for mysql/mssql * rename log sender to dummy sender * update the integration tests
This commit is contained in:
parent
67567eff0e
commit
3d91bb2f2d
8 changed files with 60 additions and 12 deletions
|
@ -1529,6 +1529,7 @@ type Mailer struct {
|
|||
FromName string
|
||||
FromEmail string
|
||||
SendAsPlainText bool
|
||||
MailerType string
|
||||
|
||||
// SMTP sender
|
||||
Host string
|
||||
|
@ -1541,7 +1542,6 @@ type Mailer struct {
|
|||
IsTLSEnabled bool
|
||||
|
||||
// Sendmail sender
|
||||
UseSendmail bool
|
||||
SendmailPath string
|
||||
SendmailArgs []string
|
||||
}
|
||||
|
@ -1562,6 +1562,7 @@ func newMailService() {
|
|||
QueueLength: sec.Key("SEND_BUFFER_LEN").MustInt(100),
|
||||
Name: sec.Key("NAME").MustString(AppName),
|
||||
SendAsPlainText: sec.Key("SEND_AS_PLAIN_TEXT").MustBool(false),
|
||||
MailerType: sec.Key("MAILER_TYPE").In("", []string{"smtp", "sendmail", "dummy"}),
|
||||
|
||||
Host: sec.Key("HOST").String(),
|
||||
User: sec.Key("USER").String(),
|
||||
|
@ -1574,7 +1575,6 @@ func newMailService() {
|
|||
KeyFile: sec.Key("KEY_FILE").String(),
|
||||
IsTLSEnabled: sec.Key("IS_TLS_ENABLED").MustBool(),
|
||||
|
||||
UseSendmail: sec.Key("USE_SENDMAIL").MustBool(),
|
||||
SendmailPath: sec.Key("SENDMAIL_PATH").MustString("sendmail"),
|
||||
}
|
||||
MailService.From = sec.Key("FROM").MustString(MailService.User)
|
||||
|
@ -1584,6 +1584,13 @@ func newMailService() {
|
|||
MailService.SendAsPlainText = !sec.Key("ENABLE_HTML_ALTERNATIVE").MustBool(false)
|
||||
}
|
||||
|
||||
if sec.HasKey("USE_SENDMAIL") {
|
||||
log.Warn("USE_SENDMAIL is deprecated, use MAILER_TYPE=sendmail")
|
||||
if MailService.MailerType == "" && sec.Key("USE_SENDMAIL").MustBool(false) {
|
||||
MailService.MailerType = "sendmail"
|
||||
}
|
||||
}
|
||||
|
||||
parsed, err := mail.ParseAddress(MailService.From)
|
||||
if err != nil {
|
||||
log.Fatal(4, "Invalid mailer.FROM (%s): %v", MailService.From, err)
|
||||
|
@ -1591,7 +1598,11 @@ func newMailService() {
|
|||
MailService.FromName = parsed.Name
|
||||
MailService.FromEmail = parsed.Address
|
||||
|
||||
if MailService.UseSendmail {
|
||||
if MailService.MailerType == "" {
|
||||
MailService.MailerType = "smtp"
|
||||
}
|
||||
|
||||
if MailService.MailerType == "sendmail" {
|
||||
MailService.SendmailArgs, err = shellquote.Split(sec.Key("SENDMAIL_ARGS").String())
|
||||
if err != nil {
|
||||
log.Error(4, "Failed to parse Sendmail args: %v", CustomConf, err)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue