42 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
from __future__ import absolute_import, unicode_literals
 | 
						|
import os
 | 
						|
from celery import Celery
 | 
						|
from celery.schedules import crontab
 | 
						|
from datetime import timedelta
 | 
						|
 | 
						|
# set the default Django settings module for the 'celery' program.
 | 
						|
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings')
 | 
						|
 | 
						|
app = Celery('mysite')
 | 
						|
 | 
						|
# Using a string here means the worker doesn't have to serialize
 | 
						|
# the configuration object to child processes.
 | 
						|
# - namespace='CELERY' means all celery-related configuration keys
 | 
						|
#   should have a `CELERY_` prefix.
 | 
						|
app.config_from_object('django.conf:settings', namespace='CELERY')
 | 
						|
 | 
						|
# Load task modules from all registered Django app configs.
 | 
						|
app.autodiscover_tasks()
 | 
						|
 | 
						|
 | 
						|
@app.task(bind=True)
 | 
						|
def debug_task(self):
 | 
						|
    print('Request: {0!r}'.format(self.request))
 | 
						|
 | 
						|
app.conf.update(
 | 
						|
  CELERYBEAT_SCHEDULE = {
 | 
						|
    'yc-task': {
 | 
						|
      'task': 'safesite.tasks.ycjs',
 | 
						|
      #'schedule': crontab(hour=4, minute=30, day_of_week=1),
 | 
						|
      #'schedule': timedelta(seconds=20),
 | 
						|
      #'schedule': crontab(minute=00,hour=1,day_of_month=1),
 | 
						|
      'schedule': crontab(minute=2),
 | 
						|
      #'args': (5, 6)
 | 
						|
    },
 | 
						|
    'risk-task': {
 | 
						|
      'task': 'safesite.tasks.risktask',
 | 
						|
      'schedule': timedelta(minutes=1),
 | 
						|
      #'args': (5, 6)
 | 
						|
    },
 | 
						|
  }
 | 
						|
) |