Files
app-autotest/site/routes/api.py
T

41 lines
951 B
Python

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})