Commit fce0e374 authored by Javier Velázquez's avatar Javier Velázquez
Browse files

Changes:

- Add telemetry, client and subscription database and remove temporal databases
- Simplify restconf namespace endpoints
- Modify client functions in api main
- Modify subscription functions in api main
- Modify telemetry functions in api main
- Move functions in api to specific mapper and realizer functions
- Create workflow for monitoring in main
- Create aggregate_monitoring function in mapper
- Create get metrics function in realizer
- Move functions for retrieving simap telemetry to tfs_connector function
- Add new paths for simap telemetry retrieval and for ietf networks
- Move telemetry cache into config.py
- Modifications in postman collections for testing
parent 3d5e811e
Loading
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ from src.webui.gui import gui_bp
from src.config.config import create_config
from src.database.db import init_db as init_slice
from src.database.service_db import init_db as init_service
from src.database.telemetry_client_db import init_db as init_telemetry

# Paths that do not require authentication (Swagger UI and its static assets)
# /nsc       → Swagger UI
@@ -58,6 +59,7 @@ def create_app():
    """Create Flask application with configured API and namespaces."""
    init_slice()
    init_service()
    init_telemetry()
    app = Flask(__name__)
    app = create_config(app)
    # app.logger.setLevel(logging.INFO)
+230 −548

File changed.

Preview size limit exceeded, changes collapsed.

+7 −2
Original line number Diff line number Diff line
@@ -42,7 +42,7 @@ E2E_OPTICAL_IP=127.0.0.1
# Realizer
# -------------------------
# If true, no config sent to controllers
DUMMY_MODE=false
DUMMY_MODE=true

# -------------------------
# Teraflow
@@ -66,12 +66,17 @@ TFS_E2E_IP=127.0.0.1
# -------------------------
# Restconf Controller
# -------------------------
RESTCONF_IP=127.0.0.1
RESTCONF_IP=192.168.27.189
# Options: TFS or IXIA
SDN_CONTROLLER_TYPE=TFS
# Options: FRR, CISCO
DATAPLANE_SUPPORT=CISCO

# -------------------------
# Monitoring
# -------------------------
SDN_SUBSCRIPTION_PERIOD=10

# -------------------------
# WebUI
# -------------------------
+5 −0
Original line number Diff line number Diff line
@@ -69,8 +69,13 @@ def create_config(app: Flask):
    app.config["SDN_CONTROLLER_TYPE"] = os.getenv("SDN_CONTROLLER_TYPE", "TFS")
    app.config["DATAPLANE_SUPPORT"] = os.getenv("DATAPLANE_SUPPORT", "FRR")

    # Monitoring
    app.config["SDN_SUBSCRIPTION_PERIOD"] = int(os.getenv("SDN_SUBSCRIPTION_PERIOD", "10"))
    app.config["TELEMETRY_CACHE"] = {}

    # API
    app.config["API_USERNAME"] = os.getenv("API_USERNAME", "admin")
    app.config["API_PASSWORD"] = os.getenv("API_PASSWORD", "admin")

    return app
+2 −0
Original line number Diff line number Diff line
@@ -28,6 +28,8 @@ DATABASE_PATH = SRC_PATH / "database"
CONFIG_PATH = SRC_PATH / "config"
NBI_L2_PATH = "restconf/data/ietf-l2vpn-svc:l2vpn-svc/vpn-services"
NBI_L3_PATH = "restconf/data/ietf-l3vpn-svc:l3vpn-svc/vpn-services"
NBI_IETF_NETWORKS_PATH = "restconf/data/ietf-network:networks"
NBI_SIMAP_SUSCRIPTION_PATH = "/restconf/operations/subscriptions:establish-subscription"


Loading