--Added Del api for register Node
	--Password must be stored in table hashed!!!!!!
This commit is contained in:
george committed 2026-09-09 15:57:30 +05:30
1 parent 9977440c2d
commit 254f8f1816
1 file changed
+46 -6
+46 -6
View File
@@ -530,6 +530,8 @@ def get_node_interfaces(db: Session = Depends(get_db),token_data: dict = Depends
detail=str(e) detail=str(e)
) )
# !!!!!!!!!!!!!!!!!PASSWORD MUST BE STORED IN MANAGEMENT TABLE!!!!!!!!!!!!!!
@app.delete("/spock/del-node-interfaces") @app.delete("/spock/del-node-interfaces")
def delete_node_interface( def delete_node_interface(
uuid: UUID, uuid: UUID,
@@ -548,11 +550,49 @@ def delete_node_interface(
status_code=404, status_code=404,
detail="Node interface not found" detail="Node interface not found"
) )
conn = None
cur = None
try:
conn = psycopg2.connect(
host=node.host,
port=node.port,
dbname=node.dbname,
user=node.user,
password=os.getenv("DB_PASSWORD")
)
cur = conn.cursor()
cur.execute(
"SELECT spock.node_drop(%s);",
(node.if_name,)
)
# Print fetched record result = cur.fetchone()
conn.commit()
# 2. Delete management row
db.delete(node)
db.commit()
return {
"status": "success",
"message": f"Spock node {node.if_name} unregistered successfully",
"uuid": str(uuid),
"node_name": node.if_name
}
except Exception as e:
if conn:
conn.rollback()
print(f"Error: {e}")
raise HTTPException(
status_code=500,
detail=f"Failed to unregister node: {str(e)}"
)
finally:
if cur:
cur.close()
if conn:
conn.close()
return {
"status": "success",
"message": "API called DEL API",
"uuid": str(uuid)
}