From bf23ce191ba6daf3dfca604243dd88d2e3996eff Mon Sep 17 00:00:00 2001 From: Douwe Maan Date: Sun, 11 Oct 2015 18:17:49 +0200 Subject: [PATCH] Enable arbitration in MailRoom --- Gemfile | 2 +- Gemfile.lock | 4 ++-- config/mail_room.yml.example | 12 +++++++++++- doc/incoming_email/README.md | 30 ++++++++++++++++++++++++++++++ 4 files changed, 44 insertions(+), 4 deletions(-) diff --git a/Gemfile b/Gemfile index e8cdb7a4a97..967092994a6 100644 --- a/Gemfile +++ b/Gemfile @@ -290,7 +290,7 @@ gem 'newrelic-grape' gem 'octokit', '~> 3.7.0' -gem "mail_room", "~> 0.5.2" +gem "mail_room", "~> 0.6.0" gem 'email_reply_parser', '~> 0.5.8' diff --git a/Gemfile.lock b/Gemfile.lock index 9911904d304..58426a60683 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -392,7 +392,7 @@ GEM systemu (~> 2.6.2) mail (2.6.3) mime-types (>= 1.16, < 3) - mail_room (0.5.2) + mail_room (0.6.0) method_source (0.8.2) mime-types (1.25.1) mimemagic (0.3.0) @@ -854,7 +854,7 @@ DEPENDENCIES jquery-ui-rails (~> 4.2.1) kaminari (~> 0.16.3) letter_opener (~> 1.1.2) - mail_room (~> 0.5.2) + mail_room (~> 0.6.0) minitest (~> 5.7.0) mousetrap-rails (~> 1.4.6) mysql2 (~> 0.3.16) diff --git a/config/mail_room.yml.example b/config/mail_room.yml.example index ed4a5193a6a..bb624e8a187 100644 --- a/config/mail_room.yml.example +++ b/config/mail_room.yml.example @@ -12,8 +12,10 @@ # :email: "gitlab-incoming@gmail.com" # # Email account password # :password: "password" + # # The name of the mailbox where incoming mail will end up. Usually "inbox". # :name: "inbox" + # # Always "sidekiq". # :delivery_method: sidekiq # # Always true. @@ -25,5 +27,13 @@ # :namespace: resque:gitlab # # Always "incoming_email". # :queue: incoming_email - # # Always "EmailReceiverWorker" + # # Always "EmailReceiverWorker". # :worker: EmailReceiverWorker + + # # Always "redis". + # :arbitration_method: redis + # :arbitration_options: + # # The URL to the Redis server. Should match the URL in config/resque.yml. + # :redis_url: redis://localhost:6379 + # # Always "mail_room:gitlab". + # :namespace: mail_room:gitlab diff --git a/doc/incoming_email/README.md b/doc/incoming_email/README.md index 87267423471..076c8c049a8 100644 --- a/doc/incoming_email/README.md +++ b/doc/incoming_email/README.md @@ -118,8 +118,10 @@ To set up a basic Postfix mail server with IMAP access on Ubuntu, follow [these :email: "incoming" # Email account password :password: "[REDACTED]" + # The name of the mailbox where incoming mail will end up. Usually "inbox". :name: "inbox" + # Always "sidekiq". :delivery_method: sidekiq # Always true. @@ -133,6 +135,14 @@ To set up a basic Postfix mail server with IMAP access on Ubuntu, follow [these :queue: incoming_email # Always "EmailReceiverWorker" :worker: EmailReceiverWorker + + # Always "redis". + :arbitration_method: redis + :arbitration_options: + # The URL to the Redis server. Should match the URL in config/resque.yml. + :redis_url: redis://localhost:6379 + # Always "mail_room:gitlab". + :namespace: mail_room:gitlab ``` ```yaml @@ -151,8 +161,10 @@ To set up a basic Postfix mail server with IMAP access on Ubuntu, follow [these :email: "gitlab-incoming@gmail.com" # Email account password :password: "[REDACTED]" + # The name of the mailbox where incoming mail will end up. Usually "inbox". :name: "inbox" + # Always "sidekiq". :delivery_method: sidekiq # Always true. @@ -166,6 +178,14 @@ To set up a basic Postfix mail server with IMAP access on Ubuntu, follow [these :queue: incoming_email # Always "EmailReceiverWorker" :worker: EmailReceiverWorker + + # Always "redis". + :arbitration_method: redis + :arbitration_options: + # The URL to the Redis server. Should match the URL in config/resque.yml. + :redis_url: redis://localhost:6379 + # Always "mail_room:gitlab". + :namespace: mail_room:gitlab ``` 5. Edit the init script configuration at `/etc/default/gitlab` to enable `mail_room`: @@ -228,8 +248,10 @@ To set up a basic Postfix mail server with IMAP access on Ubuntu, follow [these :email: "gitlab-incoming@gmail.com" # Email account password :password: "[REDACTED]" + # The name of the mailbox where incoming mail will end up. Usually "inbox". :name: "inbox" + # Always "sidekiq". :delivery_method: sidekiq # Always true. @@ -243,6 +265,14 @@ To set up a basic Postfix mail server with IMAP access on Ubuntu, follow [these :queue: incoming_email # Always "EmailReceiverWorker" :worker: EmailReceiverWorker + + # Always "redis". + :arbitration_method: redis + :arbitration_options: + # The URL to the Redis server. Should match the URL in config/resque.yml. + :redis_url: redis://localhost:6379 + # Always "mail_room:gitlab". + :namespace: mail_room:gitlab ``` 4. Uncomment the `mail_room` line in your `Procfile`: