Test de la configuration de l'email avant le début de l'installation

L’outil discourse-doctor peut envoyer un e-mail de test. Ceci devrait également être ajouté à l’outil discourse-setup. Effectuez un test d’e-mail rapide pour vérifier que les données SMTP saisies par l’utilisateur fonctionnent AVANT de configurer l’ensemble de la pile logicielle. Comme l’indiquent les notes, il sera inopérant si l’e-mail n’est pas correctement configuré.

Cela pourrait faire gagner beaucoup de temps si la personne qui effectue l’installation a mal tapé ne serait-ce qu’un seul élément de donnée.

Hmm. Il semble qu’il soit possible de faire un test SMTP semi-automatisé comme celui-ci :

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 

Il devrait donc être possible de faire un tel test. Ma préoccupation est qu’il y aurait un tas de faux positifs et de faux négatifs, mais peut-être qu’afficher un avertissement en cas d’échec pourrait aider certaines personnes.

Peut-être qu’une meilleure idée serait un autre script (discourse-mail-check ?) qui ferait un test rapide et sommaire comme celui-ci si vous rencontrez des problèmes.

J’espérais simplement que le test se déroule directement après que l’utilisateur ait saisi les détails SMTP. Il envoie un e-mail de test à une adresse fournie par l’utilisateur et on lui demande s’il a reçu l’e-mail. S’il l’a reçu, l’installation continue. Sinon, il peut retester ou modifier la configuration SMTP et réessayer.

2 « J'aime »

tel que décrit dans mon post ici Install Discourse on Amazon Web Services (AWS) with Lightsail, SES, and Route 53 - #4 by wal J’ai pu envoyer des e-mails de test avant d’exécuter le script complet discourse-setup en utilisant cette méthode décrite ici avec telnet

notamment, j’ai utilisé le port 587 au lieu du 25 indiqué là, et vous devez vous assurer d’encoder en base64 votre nom d’utilisateur et mot de passe SMTP.

Également lié dans ce post se trouve un script qu’AWS fournit, qui montre comment faire la même chose avec la commande openssl (lien ici ; Creating configuration sets in SES - Amazon Simple Email Service )

si vous n’utilisez pas AWS SES pour votre serveur de messagerie, vous devrez peut-être ajuster légèrement le script, mais en général, je pense que l’une ou l’autre de ces méthodes devrait vous aider à vérifier les e-mails avant l’installation (c’est ce que j’ai fait)

bien que je sois d’accord qu’il devrait idéalement y avoir un moyen de tester l’e-mail avant l’installation, je pense qu’il serait en fait préférable de le proposer comme un script distinct et autonome avec Discourse afin que vous puissiez l’exécuter sans avoir à passer par l’ensemble du processus de configuration, qui peut prendre environ 10 minutes.

1 « J'aime »