Я настраиваю сервер Gitlab и заканчиваю установку.

Хотя все с Gitlab работает нормально, проверка адресов электронной почты не удается. Я получаю следующую ошибку:

Date: Wed, 08 Jan 2014 15:41:50 +0100
From: Mail Delivery System <Mailer-Daemon@git.example.com>
To: git@git.example.com
Subject: Mail failure - no recipient addresses

A message that you sent using the -t command line option contained no
addresses that were not also on the command line, and were therefore
suppressed. This left no recipient addresses, and so no delivery could
be attempted.

------ This is a copy of your message, including all the headers. ------

Date: Wed, 08 Jan 2014 15:41:50 +0100
From: git@git.example.com
Reply-To: git@git.example.com
To: username@myemail.com
Message-ID: <52cd63ae85c0d_1802235567aa687b9@example.hostname.mail>
Subject: Confirmation instructions
Mime-Version: 1.0
Content-Type: text/html;
 charset=UTF-8
Content-Transfer-Encoding: 7bit

<p>Welcome shade!</p>

  <p>You can confirm your email (username@myemail.com) through the link below:</p>

<p><a href="https://git.example.com/users/confirmation?confirmation_token=XXXXXXXXXXXXX">Confirm my account</a></p>

Это ошибка в Gitlab или я испортил конфигурацию exim?

2 ответа2

2

Как вы можете видеть в описании параметров командной строки exim, если используется параметр командной строки -t то получатели берутся из стандартного ввода команды exim (из заголовков электронной почты), а затем получатели, взятые из командной строки, вычитаются из этого списка. Похоже, у вас есть одинаковые получатели в командной строке и в заголовках писем.

Вы можете удалить его из командной строки, если это позволяет конфигурация Gitlab, или вы можете использовать опции no_extract_addresses_remove_arguments в конфигурации exim, поэтому exim пытается добавлять получателей из командной строки, а не вычитать их (дубликаты будут обрабатываться правильно, поэтому вы должны получить то, что ты хочешь).

1

Согласно этой проблеме, это ошибка в вышестоящем Ruby или Exim4.

Патч доступен:

# diff -u /opt/gitlab/embedded/service/gitlab-rails/config/application.rb.org /opt/gitlab/embedded/service/gitlab-rails/config/application.rb
--- /opt/gitlab/embedded/service/gitlab-rails/config/application.rb.org 2014-09-11 16:21:11.641493626 +0200
+++ /opt/gitlab/embedded/service/gitlab-rails/config/application.rb     2014-09-11 16:21:51.959381839 +0200
@@ -7,6 +7,9 @@

 module Gitlab
   class Application < Rails::Application
+    #Fix for compatibility issue with exim as explained at https://github.com/gitlabhq/gitlabhq/issues/4866
+    config.action_mailer.sendmail_settings = { :arguments => "-i" }
+
     # Settings in config/environments/* take precedence over those specified here.
     # Application configuration should go into files in config/initializers
     # -- all .rb files in that directory are automatically loaded.

Перезапустите Gitlab после этого:

gitlab-ctl restart

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .