Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
| from fastapi import FastAPI, Request, Response | |
| import os | |
| KEY = os.environ.get("WEBHOOK_SECRET") | |
| app = FastAPI() | |
| async def webhook(request: Request): | |
| if request.headers.get("X-Webhook-Secret") != KEY: | |
| return Response("Invalid secret", status_code=401) | |
| data = await request.json() | |
| event = data.get("event", {}) | |
| repo = data.get("repo", {}) | |
| # Only process model repo events | |
| if repo.get("type") != "model" or event.get("scope") != "repo": | |
| return Response("Not a model repo event", status_code=200) | |
| action = event.get("action") | |
| if action == "move": | |
| old_name = data.get("oldRepo", {}).get("name", "unknown") # TODO ernsure good key when name change | |
| new_name = repo.get("name", "unknown") | |
| print(f"Model repo renamed from {old_name} to {new_name}.") | |
| elif action == "delete": | |
| name = repo.get("name", "unknown") | |
| print(f"Model repo {name} was deleted.") | |
| return Response("Webhook received!", status_code=200) | |