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

32
app/routes/k8s.py Normal file
View File

@@ -0,0 +1,32 @@
from fastapi import APIRouter
from pydantic import BaseModel
from typing import List
from database import insert_kubernetes_node, fetch_all
router = APIRouter()
class KubernetesNode(BaseModel):
cluster_name: str
node_name: str
cpu: int
memory: str
storage: str
type: str
namespaces: List[str]
@router.get("/k8s/data")
def get_k8s_data():
return {"kubernetes_nodes": fetch_all("kubernetes_nodes")}
@router.post("/k8s/data")
def add_k8s_data(node: KubernetesNode):
insert_kubernetes_node(
cluster_name=node.cluster_name,
node_name=node.node_name,
cpu=node.cpu,
memory=node.memory,
storage=node.storage,
node_type=node.type,
namespaces=node.namespaces
)
return {"message": f"Kubernetes node '{node.node_name}' in cluster '{node.cluster_name}' added successfully."}