From c044144f68f349a0619d8bbb3765e7308575dc6d Mon Sep 17 00:00:00 2001 From: Arnaud Lyard Date: Sun, 18 Jan 2026 09:53:36 +0100 Subject: [PATCH] Update mailer --- compose.override.yaml | 18 ------------ config/packages/mailer.yaml | 5 ++-- config/packages/messenger.yaml | 46 +++++++++++++++---------------- src/Controller/PageController.php | 4 +-- src/Service/MailService.php | 1 - 5 files changed, 28 insertions(+), 46 deletions(-) delete mode 100644 compose.override.yaml diff --git a/compose.override.yaml b/compose.override.yaml deleted file mode 100644 index 8dc54de..0000000 --- a/compose.override.yaml +++ /dev/null @@ -1,18 +0,0 @@ - -services: -###> doctrine/doctrine-bundle ### - database: - ports: - - "5432" -###< doctrine/doctrine-bundle ### - -###> symfony/mailer ### - mailer: - image: axllent/mailpit - ports: - - "1025" - - "8025" - environment: - MP_SMTP_AUTH_ACCEPT_ANY: 1 - MP_SMTP_AUTH_ALLOW_INSECURE: 1 -###< symfony/mailer ### diff --git a/config/packages/mailer.yaml b/config/packages/mailer.yaml index 56a650d..eed6f03 100644 --- a/config/packages/mailer.yaml +++ b/config/packages/mailer.yaml @@ -1,3 +1,4 @@ framework: - mailer: - dsn: '%env(MAILER_DSN)%' + mailer: + dsn: "%env(MAILER_DSN)%" + message_bus: false diff --git a/config/packages/messenger.yaml b/config/packages/messenger.yaml index 270f3c7..4af6b11 100644 --- a/config/packages/messenger.yaml +++ b/config/packages/messenger.yaml @@ -1,29 +1,29 @@ framework: - messenger: - failure_transport: failed + messenger: + failure_transport: failed - transports: - # https://symfony.com/doc/current/messenger.html#transport-configuration - async: - dsn: '%env(MESSENGER_TRANSPORT_DSN)%' - options: - use_notify: true - check_delayed_interval: 60000 - retry_strategy: - max_retries: 3 - multiplier: 2 - failed: 'doctrine://default?queue_name=failed' - # sync: 'sync://' + transports: + # https://symfony.com/doc/current/messenger.html#transport-configuration + async: + dsn: "%env(MESSENGER_TRANSPORT_DSN)%" + options: + use_notify: true + check_delayed_interval: 60000 + retry_strategy: + max_retries: 3 + multiplier: 2 + failed: "doctrine://default?queue_name=failed" + # sync: 'sync://' - default_bus: messenger.bus.default + default_bus: messenger.bus.default - buses: - messenger.bus.default: [] + buses: + messenger.bus.default: [] - routing: - Symfony\Component\Mailer\Messenger\SendEmailMessage: async - Symfony\Component\Notifier\Message\ChatMessage: async - Symfony\Component\Notifier\Message\SmsMessage: async + routing: + Symfony\Component\Mailer\Messenger\SendEmailMessage: async + Symfony\Component\Notifier\Message\ChatMessage: async + Symfony\Component\Notifier\Message\SmsMessage: async - # Route your messages to the transports - # 'App\Message\YourMessage': async + # Route your messages to the transports + # 'App\Message\YourMessage': async diff --git a/src/Controller/PageController.php b/src/Controller/PageController.php index fa13bc3..736dcd9 100644 --- a/src/Controller/PageController.php +++ b/src/Controller/PageController.php @@ -8,10 +8,10 @@ use App\Form\ContactType; use App\Service\MailService; use DateTimeImmutable; use Doctrine\ORM\EntityManagerInterface; -use Exception; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; +use Symfony\Component\Mailer\Exception\TransportExceptionInterface; use Symfony\Component\Routing\Attribute\Route; final class PageController extends AbstractController @@ -78,7 +78,7 @@ final class PageController extends AbstractController $this->mailService->sendContactMail($data); $contact->setIsValid(true); $this->addFlash('success', 'Votre message a été envoyé avec succès.'); - } catch (Exception $e) { + } catch (TransportExceptionInterface $e) { $contact->setIsValid(false); $this->addFlash('error', 'Une erreur est survenue lors de l’envoi du message.'); } diff --git a/src/Service/MailService.php b/src/Service/MailService.php index d28ebbe..b310ddd 100644 --- a/src/Service/MailService.php +++ b/src/Service/MailService.php @@ -5,7 +5,6 @@ use App\Entity\Configuration; use Doctrine\ORM\EntityManagerInterface; use Symfony\Bridge\Twig\Mime\TemplatedEmail; use Symfony\Component\Mailer\MailerInterface; -use Symfony\Component\Mime\Email; class MailService {