fix: fixes

This commit is contained in:
itqop 2025-11-05 03:12:10 +03:00
parent 71c03e71ef
commit 6d52bcbbe7
2 changed files with 25 additions and 0 deletions

View File

@ -13,6 +13,7 @@ from .os_router import router as service_router
from .v1 import router as v1_router
from dataloader.context import APP_CTX
from dataloader.workers.manager import build_manager_from_env, WorkerManager
from dataloader.workers.pipelines import load_all as load_pipelines
_manager: WorkerManager | None = None
@ -25,6 +26,7 @@ async def lifespan(app: tp.Any) -> AsyncGenerator[None, None]:
"""
global _manager
await APP_CTX.on_startup()
load_pipelines()
_manager = build_manager_from_env()
await _manager.start()
try:

View File

@ -1,2 +1,25 @@
"""Модуль пайплайнов обработки задач."""
# src/dataloader/workers/pipelines/__init__.py
from __future__ import annotations
import importlib
import pkgutil
from typing import Iterable
def load_all() -> None:
"""
Импортирует все модули в пакете pipelines, чтобы сработали @register().
"""
pkg_name = __name__
for mod in iter_modules():
importlib.import_module(f"{pkg_name}.{mod}")
def iter_modules() -> Iterable[str]:
"""
Возвращает имена всех подпакетов/модулей в текущем пакете.
"""
for m in pkgutil.iter_modules(__path__): # type: ignore[name-defined]
yield m.name