Skip to content

Commit 195b2ef

Browse files
authored
Ensure celery tasks execute once (#2242)
* adding rebeat settings * setting redbeat scheduler in celery app * updating deps * pinning cairo-svg
1 parent c8508d4 commit 195b2ef

File tree

4 files changed

+1748
-1643
lines changed

4 files changed

+1748
-1643
lines changed

docker-compose.apps.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ services:
5959
command: >
6060
/bin/bash -c '
6161
sleep 3;
62-
celery -A main.celery:app worker -E -Q default,edx_content -B -l ${MITOL_LOG_LEVEL:-INFO}'
62+
celery -A main.celery:app worker -E -Q default,edx_content -B --scheduler redbeat.RedBeatScheduler -l ${MITOL_LOG_LEVEL:-INFO}'
6363
depends_on:
6464
db:
6565
condition: service_healthy

main/settings_celery.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
"""
44

55
from celery.schedules import crontab
6+
from redbeat import RedBeatScheduler
67

78
from main.envs import get_bool, get_int, get_string
89

@@ -17,6 +18,9 @@
1718
DEV_ENV = get_bool("DEV_ENV", False) # noqa: FBT003
1819
USE_CELERY = True
1920
CELERY_BROKER_URL = get_string("CELERY_BROKER_URL", get_string("REDISCLOUD_URL", None))
21+
CELERY_BEAT_SCHEDULER = RedBeatScheduler
22+
CELERY_REDBEAT_REDIS_URL = CELERY_BROKER_URL
23+
redbeat_redis_url = CELERY_BROKER_URL
2024
CELERY_RESULT_BACKEND = get_string(
2125
"CELERY_RESULT_BACKEND", get_string("REDISCLOUD_URL", None)
2226
)

0 commit comments

Comments
 (0)