import httpx from fastapi import APIRouter from config import GITEA_URL, GITEA_TOKEN router = APIRouter() HEADERS = {"Authorization": f"token {GITEA_TOKEN}"} if GITEA_TOKEN else {} @router.get("/repos") async def list_repos(): async with httpx.AsyncClient() as c: r = await c.get(f"{GITEA_URL}/api/v1/repos/search", headers=HEADERS, params={"limit": 50}) return r.json() @router.get("/repos/{owner}/{repo}/commits") async def list_commits(owner: str, repo: str, page: int = 1): async with httpx.AsyncClient() as c: r = await c.get(f"{GITEA_URL}/api/v1/repos/{owner}/{repo}/commits", headers=HEADERS, params={"page": page}) return r.json()