feat(routers): add executions, backups, and settings endpoints

This commit is contained in:
2026-05-11 22:01:31 +02:00
parent b2d196498b
commit b4a22a1c44
3 changed files with 94 additions and 6 deletions
+21 -2
View File
@@ -1,4 +1,23 @@
from fastapi import APIRouter
from fastapi import APIRouter, Depends, HTTPException
from sqlalchemy.ext.asyncio import AsyncSession
from sqlalchemy import select
from typing import List
from app.database import get_db
from app.models import JobExecution
from app.schemas import JobExecution as JobExecutionSchema
router = APIRouter(prefix="/api/executions", tags=["executions"])
# Will be implemented in later tasks
@router.get("/", response_model=List[JobExecutionSchema])
async def list_executions(db: AsyncSession = Depends(get_db)):
result = await db.execute(select(JobExecution).order_by(JobExecution.started_at.desc()))
executions = result.scalars().all()
return executions
@router.get("/{execution_id}", response_model=JobExecutionSchema)
async def get_execution(execution_id: int, db: AsyncSession = Depends(get_db)):
result = await db.execute(select(JobExecution).where(JobExecution.id == execution_id))
execution = result.scalar_one_or_none()
if not execution:
raise HTTPException(status_code=404, detail="Execution not found")
return execution