import threading from flask import Blueprint, jsonify, request from api.auth import get_client, get_endpoint, get_token from runner import run_tests, get_status, load_config, save_config bp = Blueprint("api", __name__) @bp.route("/api/run", methods=["POST"]) def api_run(): token = get_token() client = get_client() if not client: return jsonify({"error": "Не удалось определить стенд"}), 500 endpoint = get_endpoint() t = threading.Thread( target=run_tests, args=(endpoint, token), daemon=True, ) t.start() return jsonify({"ok": True}) @bp.route("/api/status") def api_status(): return jsonify(get_status() or {}) @bp.route("/api/config", methods=["GET"]) def api_config_get(): return jsonify(load_config()) @bp.route("/api/config", methods=["POST"]) def api_config_save(): save_config(request.get_json()) return jsonify({"ok": True})