summaryrefslogtreecommitdiff
path: root/app/jobs.py
blob: 4ad4d40a5a6e58ee076bab4bdb64454ab67c823c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from apscheduler.schedulers.asyncio import AsyncIOScheduler
from app.config import settings
from app.db import SessionLocal
from app.poller import poll_builds_once

scheduler = AsyncIOScheduler()


def start_scheduler() -> None:
    scheduler.add_job(run_build_poll, "interval", seconds=settings.poll_interval_seconds, id="build-poll", replace_existing=True)
    scheduler.start()


async def run_build_poll() -> None:
    async with SessionLocal() as db:
        await poll_builds_once(db)