feat: send mailings over MailJet smtp in dedicated worker process

This commit is contained in:
Björn Fromme
2026-08-12 15:47:04 +02:00
parent a5c98025d0
commit e0a9562fc6
14 changed files with 480 additions and 44 deletions
+15 -2
View File
@@ -38,6 +38,9 @@ MESSENGER_TRANSPORT_DSN=doctrine://default?auto_setup=0
###> symfony/mailer ###
MAILER_DSN=null://null
# Has to resolve in every environment or the container does not compile, see the
# mailjet section below for the production value
MAILING_MAILER_DSN=null://null
###< symfony/mailer ###
APP_BASE_URI=https://myep-team.ddev.site
@@ -68,8 +71,18 @@ MYEP_OAUTH2_URL_RESOURCE_OWNER_DETAILS=https://my.ep-reisen.de/api/userinfo
MYEP_OAUTH2_SCOPES=email,id,roles,profile
###> symfony/mailjet-mailer ###
# MAILER_DSN=mailjet+api://PUBLIC_KEY:[email protected]
# #MAILER_DSN=mailjet+smtp://PUBLIC_KEY:[email protected]
# Bulk teamer mailings only, everything else goes out over MAILER_DSN. Set the real
# credentials in .env.local - the sending domain has to be verified in Mailjet (SPF,
# DKIM, DMARC) or the mail is delivered but lands in spam.
#
# Use smtp. The api transport does not send the message we built: it takes the parts as
# json fields and has Mailjet assemble the mail, which drops the embedded logo into an
# ordinary attachment. Over smtp our own MIME goes out unchanged and the mail arrives as
# it was rendered. Deliverability is identical either way, it is the same account, the
# same ip pool and the same dkim signature. The api is only worth revisiting if the host
# ever blocks outbound port 587, since it talks https instead.
# MAILING_MAILER_DSN=mailjet+smtp://PUBLIC_KEY:[email protected]
# MAILING_MAILER_DSN=mailjet+api://PUBLIC_KEY:PRIVATE_KEY@default
###< symfony/mailjet-mailer ###
BIN_GS=/usr/bin/gs