From a89e9736266cbf9ccde3a49eccd8ab04f72bf38f Mon Sep 17 00:00:00 2001 From: Semyon Pupkov <mail@semyonpupkov.com> Date: Sat, 11 Feb 2017 22:30:15 +0500 Subject: [PATCH] Set `Auto-Submitted: auto-generated` header to emails Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/20305 --- changelogs/unreleased/add-auto-submited-header.yml | 4 ++++ .../initializers/additional_headers_interceptor.rb | 1 + lib/additional_email_headers_interceptor.rb | 8 ++++++++ .../lib/additional_email_headers_interceptor_spec.rb | 12 ++++++++++++ 4 files changed, 25 insertions(+) create mode 100644 changelogs/unreleased/add-auto-submited-header.yml create mode 100644 config/initializers/additional_headers_interceptor.rb create mode 100644 lib/additional_email_headers_interceptor.rb create mode 100644 spec/lib/additional_email_headers_interceptor_spec.rb diff --git a/changelogs/unreleased/add-auto-submited-header.yml b/changelogs/unreleased/add-auto-submited-header.yml new file mode 100644 index 00000000000..93481613b39 --- /dev/null +++ b/changelogs/unreleased/add-auto-submited-header.yml @@ -0,0 +1,4 @@ +--- +title: Set Auto-Submitted header to mails +merge_request: +author: Semyon Pupkov diff --git a/config/initializers/additional_headers_interceptor.rb b/config/initializers/additional_headers_interceptor.rb new file mode 100644 index 00000000000..b9159e7c06c --- /dev/null +++ b/config/initializers/additional_headers_interceptor.rb @@ -0,0 +1 @@ +ActionMailer::Base.register_interceptor(AdditionalEmailHeadersInterceptor) diff --git a/lib/additional_email_headers_interceptor.rb b/lib/additional_email_headers_interceptor.rb new file mode 100644 index 00000000000..2358fa6bbfd --- /dev/null +++ b/lib/additional_email_headers_interceptor.rb @@ -0,0 +1,8 @@ +class AdditionalEmailHeadersInterceptor + def self.delivering_email(message) + message.headers( + 'Auto-Submitted' => 'auto-generated', + 'X-Auto-Response-Suppress' => 'All' + ) + end +end diff --git a/spec/lib/additional_email_headers_interceptor_spec.rb b/spec/lib/additional_email_headers_interceptor_spec.rb new file mode 100644 index 00000000000..580450eef1e --- /dev/null +++ b/spec/lib/additional_email_headers_interceptor_spec.rb @@ -0,0 +1,12 @@ +require 'spec_helper' + +describe AdditionalEmailHeadersInterceptor do + it 'adds Auto-Submitted header' do + mail = ActionMailer::Base.mail(to: 'test@mail.com', from: 'info@mail.com', body: 'hello').deliver + + expect(mail.header['To'].value).to eq('test@mail.com') + expect(mail.header['From'].value).to eq('info@mail.com') + expect(mail.header['Auto-Submitted'].value).to eq('auto-generated') + expect(mail.header['X-Auto-Response-Suppress'].value).to eq('All') + end +end -- GitLab