Coverage for services/training/src/main.py: 91%

22 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2025-10-25 16:18 +0000

1from datetime import datetime 

2from fastapi import FastAPI 

3from fastapi.middleware.cors import CORSMiddleware 

4from .config import settings 

5from .models.health import HealthResponse 

6 

7SERVICE_NAME = "training" 

8SERVICE_VERSION = "0.1.0" 

9SERVICE_PORT = 8002 

10 

11app = FastAPI(title=f"Heimdall SDR - {SERVICE_NAME}", version=SERVICE_VERSION) 

12 

13app.add_middleware(CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"]) 

14 

15 

16@app.get("/") 

17async def root(): 

18 return {"service": SERVICE_NAME, "status": "running", "timestamp": datetime.utcnow().isoformat()} 

19 

20 

21@app.get("/health") 

22async def health_check(): 

23 return HealthResponse(status="healthy", service=SERVICE_NAME, version=SERVICE_VERSION, timestamp=datetime.utcnow()) 

24 

25 

26@app.get("/ready") 

27async def readiness_check(): 

28 return {"ready": True} 

29 

30 

31if __name__ == "__main__": 

32 import uvicorn 

33 uvicorn.run(app, host="0.0.0.0", port=SERVICE_PORT)