среда, 20 сентября 2017 г.

Gitlab: отправка mail notifications с помощью SMTP

В официальной документации говорится о том, что Exim (который по умолчанию установлен в нашем шаблоне debian) - не поддерживается gitlab. А точнее работает, но слегка кривовато (то отправляет, то не отправляет). 
Поэтому было принято решение использовать стандартный SMTP сервер. 

Необходимые действия

sudo nano /etc/gitlab/gitlab.rb
Находим блок 
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.server"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "smtp user"
gitlab_rails['smtp_password'] = "smtp password"
gitlab_rails['smtp_domain'] = "example.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_openssl_verify_mode'] = 'peer'
Расскоментируем и исправим всего несколько параметров (для нашего случая)
Используемый сервер SMTP не требует авторизации, внутри нашей сети. 

gitlab_rails['smtp_address'] = "post21v.corp.loc"
gitlab_rails['smtp_port'] = 25
Строчку 
gitlab_rails['gitlab_email_from'] = 'gitlab@rb.myserver.ru'
Необходимо найти выше 
После редактирования конфигурации - необходимо "пересобрать" gitlab:
sudo gitlab-ctl reconfigure
Теперь уведомления будут корректно приходить.