Rails 5.2 не загружает переменные окружения - PullRequest
0 голосов
/ 01 июня 2018

Я определил имя пользователя и пароль Gmail для использования в конфигурации ActionMailer для отправки электронных писем и использования их в конфигурации следующим образом:

config.action_mailer.smtp_settings = {
    address:              "smtp.gmail.com",
    port:                 587,
    domain:               "example.com",
    authentication:       :plain,
    user_name:            ENV["GMAIL_USERNAME"],
    password:             ENV["GMAIL_PASSWORD"],
    enable_starttls_auto: true
}

При такой настройке электронные письма не доставляются, однако, если я вручнуювведите имя пользователя и пароль в виде строк, это работает.Я не заметил, что переменные правильно определены в консоли rails:

rails c
ENV["GMAIL_USERNAME"] #=> "my_username"

Я вышел из системы и снова вошел в систему и перезапустил терминал для получения моего .bash_profile echo $GMAIL_USERNAME возвращает правильное значение.В todos#index действие I puts ENV["GMAIL_USERNAME"], а также возвращает правильное имя пользователя.Почему это не работает тогда?Есть идеи?

Ответы [ 2 ]

0 голосов
/ 01 июня 2018

Я только что настроил свое Rails-приложение с помощью Sendgrid, и оно работает, так что это должно быть проблемой Gmail.Раньше это работало для меня, так что, может быть, они что-то изменили.

0 голосов
/ 01 июня 2018

Итак, вы запускаете это на сервере?у вас есть Apache или Nginx перед ним?помещение GMAIL_USERNAME в .bashrc вашего пользователя не поможет, потому что на каком бы сервере вы не запускали приложение rails, оно не будет читать .bashrc

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...