--FastAPI Table added
	--CHECK register_node
This commit is contained in:
george committed 2026-09-08 17:11:20 +05:30
1 parent 85f2b1884b
commit 7a0e8c7cd6
3 files changed
+104 -3

No files matched your search

+38 -3
View File
@@ -7,6 +7,10 @@ import psycopg2
from psycopg2.extras import RealDictCursor
import asyncio
from fastapi.middleware.cors import CORSMiddleware
from database import Base, engine,SessionLocal
# import models
from models import NodeInterface
origins = [
"http://localhost:5173",
"http://127.0.0.1:5173",
@@ -15,6 +19,8 @@ origins = [
app = FastAPI()
Base.metadata.create_all(bind=engine)
app.add_middleware(
CORSMiddleware,
allow_origins=origins,
@@ -213,8 +219,13 @@ def register_node(data: RegisterNodeRequest, token_data: dict = Depends(verify_t
# 5. Show registered nodes
cur.execute("""
SELECT node_id, node_name
FROM spock.node;
SELECT
n.node_id,
n.node_name,
ni.if_id
FROM spock.node n
LEFT JOIN spock.node_interface ni
ON ni.if_nodeid = n.node_id;
""")
rows = cur.fetchall()
@@ -222,10 +233,34 @@ def register_node(data: RegisterNodeRequest, token_data: dict = Depends(verify_t
nodes = [
{
"node_id": row[0],
"node_name": row[1]
"node_name": row[1],
"if_id": row[2]
}
for row in rows
]
registered_node = next(
node for node in nodes
if node["node_id"] == node_id
)
db = SessionLocal()
try:
node_interface = NodeInterface(
if_id=registered_node["if_id"],
if_name=registered_node["node_name"],
if_nodeid=registered_node["node_id"],
host=data.host,
port=data.port,
dbname=data.dbname,
user=data.user
)
db.add(node_interface)
db.commit()
finally:
db.close()
return {
"status": "success",