forked from AustralianDisabilityLimited/unisubs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtask_settings.py
70 lines (64 loc) · 2.27 KB
/
task_settings.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# Amara, universalsubtitles.org
#
# Copyright (C) 2014 Participatory Culture Foundation
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see
# http://www.gnu.org/licenses/agpl-3.0.html.
"""periodic_task_settings -- settings for celery periodic tasks."""
from datetime import timedelta
from celery.schedules import crontab
from kombu import Exchange, Queue
CELERY_QUEUES = (
Queue('celery', routing_key='celery'),
Queue('feeds', routing_key='feeds'),
)
CELERYBEAT_SCHEDULE = {
'expire-tasks': {
'task': 'teams.tasks.expire_tasks',
'schedule': crontab(minute=0, hour=7),
},
'add_videos_notification_daily': {
'task': 'teams.tasks.add_videos_notification_daily',
'schedule': crontab(minute=0, hour=23),
},
'add_videos_notification_hourly': {
'task': 'teams.tasks.add_videos_notification_hourly',
'schedule': crontab(minute=0),
},
'cleanup_videos': {
'task': 'videos.tasks.cleanup',
'schedule': crontab(hour=3, day_of_week=1),
},
'create_missing_video_index_objects': {
'task': 'videos.tasks.create_missing_index_objects',
'schedule': crontab(minute=2),
},
'cleanup_messages': {
'task': 'messages.tasks.cleanup',
'schedule': crontab(minute=30),
},
'update_feeds': {
'task': 'videos.tasks.update_from_feed',
'schedule': crontab(minute=0),
},
'import_from_accounts': {
'task': 'externalsites.tasks.import_videos_from_accounts',
'schedule': crontab(minute=0),
},
'retry_failed_sync': {
'task': 'externalsites.tasks.retry_failed_sync',
'schedule': timedelta(seconds=10),
},
}
__all__ = ['CELERYBEAT_SCHEDULE', 'CELERY_QUEUES', ]