Linux, программирование, Я!

Учим Redmine рассылать почту через Gmail

Проблема в том, что если настроить уведомления по email через smtp стандартным методом:

# File: config/email.yml
production:
  delivery_method: :smtp
  smtp_settings:
    address: "smtp.gmail.com"
    port: '587'
    domain: "smtp.gmail.com"
    authentication: :plain
    user_name: "your_email@gmail.com"
    password: "your_password"


То при попытке отправить пробный email http://redmine.example.com/admin/test_email, он выдает ошибку
Во время отправки письма произошла ошибка (530 5.7.0 Must issue a STARTTLS command first. 16sm1075274ewy.14 )
Причиной тому служит обязательное использование TLS шифрования при работе с почтовым сервером Gmail, которое Redmine из коробки не поддерживает.
Добавить такой функционал несложно…
Для начала установим плагин action_mailer_optional_tls
Если у вас установлен GIT, то просто в папке с установленным redmine выполняете команду

bash
  1. ruby script/plugin install git://github.com/collectiveidea/action_mailer_optional_tls.git

Иначе переходите на сайт http://github.com/collectiveidea/action_mailer_optional_tls , щелкаете Download source и распаковываете архив в vendor/plugins/ (чтобы получилась папка vendor/plugins/action_mailer_optional_tls с файлами init.rb и т.п.)

Приводите конфиг к виду

# File: config/email.yml
production:
  delivery_method: :smtp
  smtp_settings:
    address: "smtp.gmail.com"
    port: '587'
    domain: "gmail.com"
    authentication: :plain
    user_name: "your_email@gmail.com"
    password: "your_password"
    tls: true


Или, если пользуетесь службой Google apps для вашего домена example.com, то

# File: config/email.yml
production:
  delivery_method: :smtp
  smtp_settings:
    address: "smtp.gmail.com"
    port: '587'
    domain: "example.com"
    authentication: :plain
    user_name: "your_email@example.com"
    password: "your_password"
    tls: true


Перезапускаете сервер, например так (смотря как вы настраивали):

bash
  1. sudo service mongrel_cluster restart

И пользуетесь!

2 комментариев to Учим Redmine рассылать почту через Gmail

  1. 08.02.2010 at 17:40 | #

    Спасибо, статья очень помогла :-)

  2. Claus's Gravatar Claus
    16.02.2010 at 07:53 | #

    Огромное спасибо! Помогло

Оставить комментарий

Вы можете использовать следующие HTML теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>