Initial commit of AthonetTools

This commit is contained in:
2025-08-21 12:59:43 +00:00
commit cd932b8fcb
2483 changed files with 433999 additions and 0 deletions

25
services/api/cc_v1/ncm.py Normal file
View File

@@ -0,0 +1,25 @@
from flask import Blueprint, request, jsonify, current_app
from services.combocore.ncm import get_routes, derive_eth0_cidr_gw
bp = Blueprint("cc_ncm_v1", __name__)
@bp.post("/routes")
def api_routes():
body = request.get_json(silent=True) or {}
host = body.get("host", "").strip()
if not host:
return jsonify({"ok": False, "error": "host required"}), 400
cfg = current_app.config
routes = get_routes(host, cfg["CORE_API_USER"], cfg["CORE_API_PASS"], cfg["VERIFY_SSL"], cfg["REQUEST_TIMEOUT"])
return jsonify({"ok": True, "routes": routes})
@bp.post("/oam")
def api_oam_eth0():
body = request.get_json(silent=True) or {}
host = body.get("host", "").strip()
if not host:
return jsonify({"ok": False, "error": "host required"}), 400
cfg = current_app.config
routes = get_routes(host, cfg["CORE_API_USER"], cfg["CORE_API_PASS"], cfg["VERIFY_SSL"], cfg["REQUEST_TIMEOUT"])
cidr, gw = derive_eth0_cidr_gw(routes)
return jsonify({"ok": True, "cidr": cidr, "gw": gw})