Return the current controller hostname/IP from any compute

This commit is contained in:
grossmj
2021-10-21 21:38:36 +10:30
parent dddfe7c531
commit bb15b13a9d
18 changed files with 215 additions and 198 deletions

View File

@ -21,7 +21,7 @@ API routes for capabilities
import sys
import psutil
from fastapi import APIRouter
from fastapi import APIRouter, Request
from gns3server.version import __version__
from gns3server.compute import MODULES
@ -32,12 +32,15 @@ router = APIRouter()
@router.get("/capabilities", response_model=schemas.Capabilities)
def get_capabilities() -> dict:
def get_capabilities(request: Request) -> dict:
node_types = []
for module in MODULES:
node_types.extend(module.node_types())
# record the controller hostname or IP address
request.app.state.controller_host = request.client.host
return {
"version": __version__,
"platform": sys.platform,