Example #1
0
import os
import logging.config

from celery import Celery
from django.conf import settings
from celery.signals import setup_logging
import dotenv


dotenv.read_dotenv(os.path.join(os.path.dirname(__file__), "..", "..", "..", ".env"))
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "shuup.settings")


@setup_logging.connect
def configure_logging(*args, **kwags):
    logging.config.dictConfig(settings.LOGGING)


celery_app = Celery(settings.APPLICATION_NAME)
celery_app.config_from_object("django.conf:settings")
celery_app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)
celery_app.CELERY_BROKER_URL = settings.CELERY_BROKER_URL
celery_app.CELERY_RESULT_BACKEND = settings.CELERY_RESULT_BACKEND
celery_app.conf.CELERY_TASK_ALWAYS_EAGER = settings.CELERY_TASK_ALWAYS_EAGER
celery_app.conf.CELERY_ACCEPT_CONTENT = ["application/json"]
celery_app.conf.CELERY_TASK_SERIALIZER = "json"
celery_app.conf.CELERY_RESULT_SERIALIZER = "json"
celery_app.conf.CELERY_TIMEZONE = "UTC"
celery_app.conf.CELERY_ROUTES = {}
celery_app.conf.CELERYBEAT_SCHEDULE = {}