import os from celery import Celery # Import models in correct order for SQLAlchemy relationship resolution # CRITICAL: FaLineItem must be imported BEFORE LineItem from api.v1.modules.a24.fa.fa_item_lines.models import FaLineItem # noqa: F401 from api.v1.modules.a76.items.models import LineItem # noqa: F401 valkey_url = os.getenv("VALKEY_URL", "redis://valkey:6379/0") celery_app = Celery( "anexo76_tasks", broker=valkey_url, backend=valkey_url, include=[ "api.v1.modules.a76.reports.importacion.facturas.task", "api.v1.modules.a76.reports.importacion.consolidados.task", "api.v1.modules.a76.reports.importacion.packing_list.task", "api.v1.modules.a76.reports.exportacion.aviso_consolidado.task", "api.v1.modules.a76.reports.exportacion.descargo.task", ], # Ruta al módulo donde están las tareas ) # Configuraciones adicionales celery_app.conf.update( task_track_started=True, task_serializer="json", accept_content=["json"], result_serializer="json", timezone="America/Mexico_City", enable_utc=True, ) if __name__ == "__main__": celery_app.start()