Prova della configurazione dell'email prima di iniziare l'installazione

Lo strumento discourse-doctor può inviare un’email di prova. Questo dovrebbe essere aggiunto anche allo strumento discourse-setup. Esegui un rapido test via email per verificare che i dati SMTP inseriti dall’utente funzionino PRIMA di configurare l’intero stack software. Come indicato nelle note, sarà inoperativo se l’email non è configurata correttamente.

Ciò potrebbe far risparmiare molto tempo se la persona che esegue l’installazione ha digitato in modo errato anche un solo dato.

Hmm. Sembra che sia possibile eseguire un test SMTP semi-automatizzato in questo modo:

echo Hello world > /tmp/mail.txt
curl -v  smtp://$DISCOURSE_SMTP_ADDRESS:$DISCOURSE_SMTP_PORT  \
  --mail-from noreply@$DISCOURSE_HOSTNAME \
  --mail-rcpt $(echo $DISCOURSE_DEVELOPER_EMAILS | cut -d ',' -f 1) \
  --user $DISCOURSE_SMTP_USER_NAME:"$DISCOURSE_SMTP_PASSWORD" \
  --upload-file /tmp/mail.txt

Quindi dovrebbe essere possibile eseguire un test del genere. La mia preoccupazione è che ci sarebbero un sacco di falsi positivi e falsi negativi, ma forse stampare un avviso in caso di fallimento potrebbe aiutare alcune persone.

Forse un’idea migliore sarebbe un altro script (discourse-mail-check?) che esegua un test rapido e approssimativo in questo modo se hai problemi.

Speravo solo di avere il test subito dopo che l’utente inserisce i dettagli SMTP. Invia un’email di prova a un indirizzo fornito dall’utente e all’utente viene chiesto se ha ricevuto l’email; in caso affermativo, l’installazione continua. In caso contrario, può ritentare o modificare la configurazione SMTP e riprovare.

2 Mi Piace

come descritto nel mio post qui Install Discourse on Amazon Web Services (AWS) with Lightsail, SES, and Route 53 - #4 by wal sono stato in grado di inviare email di prova prima di eseguire lo script completo discourse-setup utilizzando questo metodo descritto qui con telnet

in particolare, ho usato la porta 587 invece della 25 mostrata lì, ed è necessario assicurarsi di codificare in base64 il nome utente e la password SMTP.

collegato anche in quel post c’è uno script che AWS fornisce che mostra come fare lo stesso con il comando openssl (link qui; Creating configuration sets in SES - Amazon Simple Email Service )

se non stai usando AWS SES per il tuo server di posta elettronica, potresti dover modificare leggermente lo script, ma in generale penso che uno o entrambi questi dovrebbero esserti utili per verificare l’email prima dell’installazione (questo è ciò che ho fatto)

mentre concordo sul fatto che idealmente dovrebbe esserci un modo per testare l’email prima dell’installazione, penso che potrebbe essere preferibile che fosse distribuito come uno script separato e autonomo di qualche tipo con Discourse in modo da poterlo eseguire senza dover passare attraverso l’intero processo di configurazione, che può richiedere circa 10 minuti

1 Mi Piace