init(app): initial version

This commit is contained in:
Aleksandr Tcitlionok
2024-12-04 08:30:25 +00:00
parent 79c3766d06
commit 209bf98fb4
17 changed files with 380 additions and 0 deletions

19
app/routes/export.py Normal file
View File

@@ -0,0 +1,19 @@
# Export data in YAML or JSON format
from fastapi import APIRouter
from database import fetch_all
import yaml
import json
router = APIRouter()
@router.get("/export")
def export_data(format: str = "yaml"):
data = {
"metal_nodes": fetch_all("metal_nodes"),
"virtual_machines": fetch_all("virtual_machines"),
"kubernetes_nodes": fetch_all("kubernetes_nodes"),
}
# Return data in the requested format
if format.lower() == "yaml":
return yaml.safe_dump(data)
return json.dumps(data, indent=2)