From c9d46545925f6e0ce946d3de660944cff481a7cb Mon Sep 17 00:00:00 2001 From: Jacob Bednarz Date: Wed, 15 Feb 2017 07:43:16 +1100 Subject: [PATCH 1/7] s/from_adress/from_address --- pkg/services/notifications/notifications.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/services/notifications/notifications.go b/pkg/services/notifications/notifications.go index 095ce15ef32..01e1d5478ac 100644 --- a/pkg/services/notifications/notifications.go +++ b/pkg/services/notifications/notifications.go @@ -48,7 +48,7 @@ func Init() error { } if !util.IsEmail(setting.Smtp.FromAddress) { - return errors.New("Invalid email address for smpt from_adress config") + return errors.New("Invalid email address for smpt from_address config") } if setting.EmailCodeValidMinutes == 0 { From 7dc6b69c8b5e1d447ec06bb1144a5097cc853e53 Mon Sep 17 00:00:00 2001 From: Jacob Bednarz Date: Wed, 15 Feb 2017 07:43:59 +1100 Subject: [PATCH 2/7] s/smpt/SMTP --- pkg/services/notifications/notifications.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/services/notifications/notifications.go b/pkg/services/notifications/notifications.go index 01e1d5478ac..c765774d062 100644 --- a/pkg/services/notifications/notifications.go +++ b/pkg/services/notifications/notifications.go @@ -48,7 +48,7 @@ func Init() error { } if !util.IsEmail(setting.Smtp.FromAddress) { - return errors.New("Invalid email address for smpt from_address config") + return errors.New("Invalid email address for SMTP from_address config") } if setting.EmailCodeValidMinutes == 0 { From 90cbfacacf4d0e6a5d4ce65ccf3e861883b9aeb2 Mon Sep 17 00:00:00 2001 From: Jacob Bednarz Date: Wed, 15 Feb 2017 07:45:28 +1100 Subject: [PATCH 3/7] Add `FromName` to SmtpSettings struct Updates the `SmtpSettings` struct to include a value for setting the name of the email sender. --- pkg/setting/setting_smtp.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkg/setting/setting_smtp.go b/pkg/setting/setting_smtp.go index e84b61634cc..db065070620 100644 --- a/pkg/setting/setting_smtp.go +++ b/pkg/setting/setting_smtp.go @@ -8,6 +8,7 @@ type SmtpSettings struct { CertFile string KeyFile string FromAddress string + FromName string SkipVerify bool SendWelcomeEmailOnSignUp bool @@ -23,6 +24,7 @@ func readSmtpSettings() { Smtp.CertFile = sec.Key("cert_file").String() Smtp.KeyFile = sec.Key("key_file").String() Smtp.FromAddress = sec.Key("from_address").String() + Smtp.FromName = sec.Key("from_name").String() Smtp.SkipVerify = sec.Key("skip_verify").MustBool(false) emails := Cfg.Section("emails") From 66445faeb597dacd44337473aaa271ca7f39586f Mon Sep 17 00:00:00 2001 From: Jacob Bednarz Date: Wed, 15 Feb 2017 07:51:41 +1100 Subject: [PATCH 4/7] Format mailer `From` field to include name Updates the messafe `From` field to include the name and email of the sender. --- pkg/services/notifications/mailer.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/services/notifications/mailer.go b/pkg/services/notifications/mailer.go index 1ca4df8877a..ae1348cbf99 100644 --- a/pkg/services/notifications/mailer.go +++ b/pkg/services/notifications/mailer.go @@ -150,7 +150,7 @@ func buildEmailMessage(cmd *m.SendEmailCommand) (*Message, error) { return &Message{ To: cmd.To, - From: setting.Smtp.FromAddress, + From: fmt.Sprintf("%s <%s>", setting.Smtp.FromName, setting.Smtp.FromAddress), Subject: subject, Body: buffer.String(), EmbededFiles: cmd.EmbededFiles, From 796957c8c6e17c3e55a69a328d635821c1d911d9 Mon Sep 17 00:00:00 2001 From: Jacob Bednarz Date: Wed, 15 Feb 2017 08:04:21 +1100 Subject: [PATCH 5/7] Update mailer tests to include `FromName` --- pkg/services/notifications/notifications_test.go | 1 + pkg/services/notifications/send_email_integration_test.go | 1 + 2 files changed, 2 insertions(+) diff --git a/pkg/services/notifications/notifications_test.go b/pkg/services/notifications/notifications_test.go index 79db664e893..3a5ff5fedb7 100644 --- a/pkg/services/notifications/notifications_test.go +++ b/pkg/services/notifications/notifications_test.go @@ -23,6 +23,7 @@ func TestNotifications(t *testing.T) { setting.Smtp.Enabled = true setting.Smtp.TemplatesPattern = "emails/*.html" setting.Smtp.FromAddress = "from@address.com" + setting.Smtp.FromName = "Grafana Admin" err := Init() So(err, ShouldBeNil) diff --git a/pkg/services/notifications/send_email_integration_test.go b/pkg/services/notifications/send_email_integration_test.go index 1a4406dc13a..7a616b7e40d 100644 --- a/pkg/services/notifications/send_email_integration_test.go +++ b/pkg/services/notifications/send_email_integration_test.go @@ -18,6 +18,7 @@ func TestEmailIntegrationTest(t *testing.T) { setting.Smtp.Enabled = true setting.Smtp.TemplatesPattern = "emails/*.html" setting.Smtp.FromAddress = "from@address.com" + setting.Smtp.FromName = "Grafana Admin" setting.BuildVersion = "4.0.0" err := Init() From 7520b4f4043b57dfeac3bc9f2827274727e4a9f5 Mon Sep 17 00:00:00 2001 From: Jacob Bednarz Date: Wed, 15 Feb 2017 08:06:58 +1100 Subject: [PATCH 6/7] Update default configuration to include `from_name` values --- conf/defaults.ini | 1 + conf/sample.ini | 1 + 2 files changed, 2 insertions(+) diff --git a/conf/defaults.ini b/conf/defaults.ini index 4606de9212e..95161ac3a3d 100644 --- a/conf/defaults.ini +++ b/conf/defaults.ini @@ -296,6 +296,7 @@ cert_file = key_file = skip_verify = false from_address = admin@grafana.localhost +from_name = Grafana Admin [emails] welcome_email_on_sign_up = false diff --git a/conf/sample.ini b/conf/sample.ini index eaedfcc6f5e..df6b18833e2 100644 --- a/conf/sample.ini +++ b/conf/sample.ini @@ -282,6 +282,7 @@ ;key_file = ;skip_verify = false ;from_address = admin@grafana.localhost +;from_name = Grafana Admin [emails] ;welcome_email_on_sign_up = false From 6a9247500a418789fae8d337c1e6a32076fd2110 Mon Sep 17 00:00:00 2001 From: Jacob Bednarz Date: Wed, 15 Feb 2017 08:07:29 +1100 Subject: [PATCH 7/7] Update documentation to include information about from_name values --- docs/sources/http_api/admin.md | 3 ++- docs/sources/installation/configuration.md | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/sources/http_api/admin.md b/docs/sources/http_api/admin.md index 8aa00d08618..9a77e7fb2a4 100644 --- a/docs/sources/http_api/admin.md +++ b/docs/sources/http_api/admin.md @@ -158,6 +158,7 @@ with Grafana admin permission. "cert_file":"", "enabled":"false", "from_address":"admin@grafana.localhost", + "from_name":"Grafana Admin", "host":"localhost:25", "key_file":"", "password":"************", @@ -292,4 +293,4 @@ Change password for specific user HTTP/1.1 200 Content-Type: application/json - {state: "new state", message: "alerts pause/un paused", "alertsAffected": 100} + {state: "new state", message: "alerts pause/un paused", "alertsAffected": 100} diff --git a/docs/sources/installation/configuration.md b/docs/sources/installation/configuration.md index 4d22d12dd9b..01f805ff175 100644 --- a/docs/sources/installation/configuration.md +++ b/docs/sources/installation/configuration.md @@ -542,6 +542,9 @@ Verify SSL for smtp server? defaults to `false` ### from_address Address used when sending out emails, defaults to `admin@grafana.localhost` +### from_name +Name to be used when sending out emails, defaults to `Grafana Admin` + ## [log] ### mode