From 0935b5c51fa4115caa6d6d98b0ef65fea4fcdec1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A1bor=20Boros?= Date: Thu, 30 Sep 2021 20:30:28 +0200 Subject: [PATCH] feat: adds CELERY_BROKER_TRANSPORT_OPTIONS (#28849) which can be configured from the lms/studio environment refactor: raise ImproperlyConfigured on TypeError Signed-off-by: Gabor Boros Co-authored-by: Jillian Vogel --- cms/envs/production.py | 12 ++++++++---- lms/envs/production.py | 12 ++++++++---- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/cms/envs/production.py b/cms/envs/production.py index bc443b5665..b9465dbec0 100644 --- a/cms/envs/production.py +++ b/cms/envs/production.py @@ -402,10 +402,14 @@ BROKER_URL = "{}://{}:{}@{}/{}".format(CELERY_BROKER_TRANSPORT, CELERY_BROKER_VHOST) BROKER_USE_SSL = ENV_TOKENS.get('CELERY_BROKER_USE_SSL', False) -BROKER_TRANSPORT_OPTIONS = { - 'fanout_patterns': True, - 'fanout_prefix': True, -} +try: + BROKER_TRANSPORT_OPTIONS = { + 'fanout_patterns': True, + 'fanout_prefix': True, + **ENV_TOKENS.get('CELERY_BROKER_TRANSPORT_OPTIONS', {}) + } +except TypeError as exc: + raise ImproperlyConfigured('CELERY_BROKER_TRANSPORT_OPTIONS must be a dict') from exc # Message expiry time in seconds CELERY_EVENT_QUEUE_TTL = ENV_TOKENS.get('CELERY_EVENT_QUEUE_TTL', None) diff --git a/lms/envs/production.py b/lms/envs/production.py index 1d74e65613..231413d833 100644 --- a/lms/envs/production.py +++ b/lms/envs/production.py @@ -524,10 +524,14 @@ BROKER_URL = "{}://{}:{}@{}/{}".format(CELERY_BROKER_TRANSPORT, CELERY_BROKER_VHOST) BROKER_USE_SSL = ENV_TOKENS.get('CELERY_BROKER_USE_SSL', False) -BROKER_TRANSPORT_OPTIONS = { - 'fanout_patterns': True, - 'fanout_prefix': True, -} +try: + BROKER_TRANSPORT_OPTIONS = { + 'fanout_patterns': True, + 'fanout_prefix': True, + **ENV_TOKENS.get('CELERY_BROKER_TRANSPORT_OPTIONS', {}) + } +except TypeError as exc: + raise ImproperlyConfigured('CELERY_BROKER_TRANSPORT_OPTIONS must be a dict') from exc # Block Structures