Миграция терпит неудачу на Heroku из -за ActiveEadmin Mailer
-
27-10-2019 - |
Вопрос
Я развертываю приложение в Heroku, и приложение находится на Rails 3.2, и у меня установлен активный администратор.
Когда я запускаю Grafe DB: мигрируйте, он сбой из -за следующей ошибки
== DeviseCreateAdminUsers: migrating =========================================
-- create_table(:admin_users)
-> 0.0823s
Sent mail to admin@example.com (3228ms)
rake aborted!
An error has occurred, this and all later migrations canceled:
Connection refused - connect(2)
Интересно, что мне нужно сделать, чтобы исправить это. Похоже, что Defise Gem или ActiveEadmin должны отправлять почту во время миграционного процесса и потому что это не может, если не удается.
Решение
Попробуйте установить аддон SendGrid:
heroku addons:add sendgrid:starter
Если вы развертываете в осине или бамбуке стеки, это должно работать сразу. Если вы используете кедровый стек, вам нужно добавить дополнительный инициализатор:
#config/initializers/mail.rb
ActionMailer::Base.smtp_settings = {
:address => 'smtp.sendgrid.net',
:port => '587',
:authentication => :plain,
:user_name => ENV['SENDGRID_USERNAME'],
:password => ENV['SENDGRID_PASSWORD'],
:domain => 'heroku.com'
}
ActionMailer::Base.delivery_method = :smtp
Другие советы
Меня это немного сбивает с толку:
Connection refused - connect(2)
У вас есть настройка почты? Вы используете SendGrid или аналогично? Помните, что Heroku не предоставляет услуги по электронной почте напрямую.