Initial release of the oVirt/RHV Engine API simulator.

Stateful FastAPI lab with contract packs, Compose/Helm, Docker Hub release
targets, and Pulumi coverage across all Engine series (GET/POST/PUT/DELETE/HEAD).
This commit is contained in:
2026-07-18 04:49:28 +03:00
commit cbd0adca91
218 changed files with 246804 additions and 0 deletions
+22
View File
@@ -0,0 +1,22 @@
"""FastAPI dependencies for oVirt routes."""
from __future__ import annotations
from fastapi import Request
from app.db.pool import AsyncpgDatabase
from app.ovirt.auth import AuthContext, resolve_request_auth
from app.ovirt.errors import OVirtError
def get_db(request: Request) -> AsyncpgDatabase:
db = getattr(request.app.state, "database", None)
if db is None:
raise OVirtError("ServiceUnavailable", "Database not ready", status_code=503)
return db # type: ignore[return-value]
async def require_auth(request: Request) -> AuthContext:
db = get_db(request)
async with db.pool.acquire() as conn:
return await resolve_request_auth(conn, dict(request.headers))