Serveur SMTP personnalisable, services tiers optionnels et emails en dev#4195
Serveur SMTP personnalisable, services tiers optionnels et emails en dev#4195jtraulle wants to merge 8 commits into
Conversation
Adresse, port et méthode d'authentification deviennent configurables via variables d'environnement, avec les valeurs Brevo actuelles comme valeurs par défaut pour rester compatible avec l'existant. Signed-off-by: Jean Traullé <j.traulle@nnx.com>
Signed-off-by: Jean Traullé <j.traulle@nnx.com>
Signed-off-by: Jean Traullé <j.traulle@nnx.com>
Intercepte les envois d'emails en développement pour les afficher dans le navigateur à /letter_opener au lieu de tenter un envoi SMTP réel. Signed-off-by: Jean Traullé <j.traulle@nnx.com>
arnaudlevy
left a comment
There was a problem hiding this comment.
Merci !
On en parle tout à l'heure, c'est encore super chouette :)
J'ai du mal à m'y tenir moi-même mais je pense qu'il faut tenter de faire des PR avec une seule chose.
Là, je dirais qu'il y en a 2 :
- letter opener
- meilleure init Brevo / Bugsnag
|
|
||
| def should_send?(email) | ||
| Rails.env.production? || email.end_with?(*Rails.application.config.internal_domains) | ||
| Rails.env.production? || Rails.env.development? || email.end_with?(*Rails.application.config.internal_domains) |
|
Merci pour les retours, je vais changer la condition pour que ça soit plus lisible pour Bugsnag et ajouter la variable d'env |
|
Je ne sais pas encore bien comment faire au mieux, et j'ai demandé à @SebouChu son avis sur INTERNAL_DOMAINS, on a peut-être plus besoin du tout, avec la gem |
Config email and opt services
|
Il reste la question de l'env de test. @pabois est-ce qu'on ajoute letter_opener ? Ou pas ? |
Type
Description
L'objectif de cette PR est de permettre la personnalisation du serveur SMTP, de ne charger les services tiers Brevo (CRM) et Bugsnag que si les variables d'environnement sont définies/non vides et d'ajouter Letter Opener en environnement de développement.
Pour le serveur SMTP, on conserve
smtp-relay.brevo.com/587/plainen paramètres par défaut si les variables d'environnementSMTP_ADDRESS,SMTP_PORTetSMTP_AUTHENTICATIONne sont pas déclarées pour rester compatible avec l'existant.Pour Letter Opener, il permet de consulter directement l'ensemble des emails qui auraient normalement été transmis au serveur SMTP directement depuis le navigateur à l'adresse
/letter_opener. Cela permet donc de s'affranchir d'une config valide de serveur SMTP en développement et permet de déboguer les emails sans risque d'envoi à de vraies personnes en cas de récupération des données depuis un autre environnement comme la production en environnement de développement puisque tout est "attrapé" par Letter Opener. La configuration desinternal_domainsreste en place pour les environnements annexes (pasproductionnidevelopment, par exemplestaging).Niveau d'incidence