Инструмент discourse-doctor может отправлять тестовое письмо. Это также следует добавить в инструмент discourse-setup. Проведите быструю проверку отправки письма, чтобы убедиться, что введенные пользователем данные SMTP работают, ПЕРЕД настройкой всего программного стека. Как указано в примечаниях, система будет неработоспособна, если электронная почта настроена неправильно.
Это может сэкономить много времени, если человек, выполняющий установку, допустил ошибку даже в одном фрагменте данных.
Так что, вероятно, такой тест можно провести. Меня беспокоит, что он может давать много ложноположительных и ложноотрицательных результатов, но, возможно, вывод предупреждения в случае сбоя поможет некоторым пользователям.
Возможно, лучшей идеей будет создание ещё одного скрипта (например, discourse-mail-check?), который бы выполнял подобный быстрый и простой тест, если у вас возникли проблемы.
Я надеялся, что тест будет запущен сразу после того, как пользователь введёт данные SMTP. Он должен отправить тестовое письмо на указанный пользователем адрес, а затем спросить, получил ли пользователь это письмо. Если да, установка продолжается. Если нет, пользователь может повторить тест или изменить конфигурацию SMTP и попробовать снова.
В частности, я использовал порт 587 вместо порта 25, показанного там, и вам обязательно нужно закодировать ваше имя пользователя и пароль SMTP в base64.
Если вы не используете AWS SES в качестве почтового сервера, возможно, вам придётся немного адаптировать скрипт, но в целом я думаю, что один или оба этих метода помогут вам проверить работу почты до установки (именно это я и сделал).
Хотя я согласен, что в идеале должен существовать способ тестирования почты до установки, я считаю, что было бы даже предпочтительнее включить её в виде отдельного автономного скрипта, поставляемого вместе с Discourse, чтобы вы могли запустить его, не проходя весь процесс настройки, который может занимать около 10 минут.