mirror of
https://github.com/bunkerity/bunkerized-nginx
synced 2023-12-13 21:30:18 +01:00
59 lines
1.4 KiB
Python
59 lines
1.4 KiB
Python
from uuid import uuid4
|
|
from fastapi import FastAPI, Request
|
|
from fastapi.responses import JSONResponse
|
|
|
|
|
|
app = FastAPI()
|
|
instance_id = None
|
|
report_num = 0
|
|
|
|
|
|
@app.get("/ping")
|
|
async def ping(_: Request):
|
|
return JSONResponse(status_code=200, content={"result": "ok", "data": "pong"})
|
|
|
|
|
|
@app.post("/register")
|
|
async def register(_: Request):
|
|
global instance_id
|
|
instance_id = str(uuid4())
|
|
return JSONResponse(status_code=200, content={"result": "ok", "data": instance_id})
|
|
|
|
|
|
@app.post("/report")
|
|
async def report(_: Request):
|
|
global report_num
|
|
report_num += 1
|
|
return JSONResponse(status_code=200, content={"result": "ok", "data": "Report acknowledged."})
|
|
|
|
|
|
@app.get("/db")
|
|
async def db(_: Request):
|
|
return JSONResponse(status_code=200, content={"result": "ok", "data": []})
|
|
|
|
|
|
@app.get("/instance_id")
|
|
async def get_instance_id(_: Request):
|
|
global instance_id
|
|
return JSONResponse(status_code=200, content={"result": "ok", "data": instance_id})
|
|
|
|
|
|
@app.get("/report_num")
|
|
async def get_report_num(_: Request):
|
|
global report_num
|
|
return JSONResponse(status_code=200, content={"result": "ok", "data": report_num})
|
|
|
|
|
|
@app.get("/reset")
|
|
async def reset(_: Request):
|
|
global instance_id, report_num
|
|
instance_id = None
|
|
report_num = 0
|
|
return JSONResponse(status_code=200, content={"result": "ok", "data": "Reset done."})
|
|
|
|
|
|
if __name__ == "__main__":
|
|
import uvicorn
|
|
|
|
uvicorn.run(app, host="127.0.0.1", port=8080)
|