chill-bundles/config/packages/messenger.yaml
Julien Fastré c40e790425
Add handling and cleanup for expired export generations
Implemented a new cron job to identify and process expired export generations, dispatching messages for their removal. Added corresponding message handler, tests, and configuration updates to handle and orchestrate the deletion workflow.
2025-05-26 17:46:46 +02:00

79 lines
3.7 KiB
YAML

framework:
messenger:
# reset services after consuming messages
reset_on_message: true
# Uncomment this (and the failed transport below) to send failed messages to this transport for later handling.
failure_transport: failed
transports:
# those transports are added by chill-bundles recipes
sync: sync://
async:
dsn: '%env(MESSENGER_TRANSPORT_DSN)%/async'
options:
exchange:
name: async
type: fanout
queues:
async: ~
auto_setup: true
priority:
dsn: '%env(MESSENGER_TRANSPORT_DSN)%/priority'
# end of transports added by chill-bundles recipes
# https://symfony.com/doc/current/messenger.html#transport-configuration
failed: 'doctrine://default?queue_name=failed'
to_sign_worker:
dsn: '%env(MESSENGER_TRANSPORT_DSN)%/to_python_sign'
serializer: Chill\DocStoreBundle\Service\Signature\Driver\BaseSigner\RequestPdfSignMessageSerializer
options:
exchange:
name: to_python_sign
type: direct
queues:
to_python_sign: ~
signed_docs:
dsn: '%env(MESSENGER_TRANSPORT_DSN)%/signed_docs'
serializer: Chill\DocStoreBundle\Service\Signature\Driver\BaseSigner\PdfSignedMessageSerializer
options:
exchange:
name: signed_docs
type: direct
queues:
signed_docs:
binding_keys: [signed_doc]
auto_setup: false
routing:
# routes added by chill-bundles recipes
'Chill\CalendarBundle\Messenger\Message\CalendarRangeMessage': async
'Chill\CalendarBundle\Messenger\Message\CalendarRangeRemovedMessage': async
'Chill\CalendarBundle\Messenger\Message\CalendarRemovedMessage': async
'Chill\CalendarBundle\Messenger\Message\CalendarMessage': async
'Chill\CalendarBundle\Messenger\Message\InviteUpdateMessage': async
'Chill\CalendarBundle\Messenger\Message\MSGraphChangeNotificationMessage': async
'Chill\MainBundle\Service\ShortMessage\ShortMessage': async
'Chill\DocGeneratorBundle\Service\Messenger\RequestGenerationMessage': priority
'Chill\PersonBundle\AccompanyingPeriod\Lifecycle\AccompanyingPeriodStepChangeRequestMessage': async
'Chill\DocStoreBundle\Service\Signature\Driver\BaseSigner\RequestPdfSignMessage': to_sign_worker
'Chill\DocStoreBundle\Service\StoredObjectCleaner\RemoveOldVersionMessage': async
'Chill\MainBundle\Workflow\Messenger\PostSignatureStateChangeMessage': priority
'Chill\MainBundle\Workflow\Messenger\PostPublicViewMessage': async
'Chill\MainBundle\Service\Workflow\CancelStaleWorkflowMessage': async
'Chill\MainBundle\Export\Messenger\ExportRequestGenerationMessage': priority
'Chill\MainBundle\Export\Messenger\RemoveExportGenerationMessage': async
# end of routes added by chill-bundles recipes
# Route your messages to the transports
# 'App\Message\YourMessage': async
# 'Symfony\Component\Mailer\Messenger\SendEmailMessage': async
when@test:
framework:
messenger:
transports:
async: 'in-memory://'
priority: 'in-memory://'
signed_docs: 'in-memory://'