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