From e548386824d6f853ed9f7bae2f8ac4bc37b47d76 Mon Sep 17 00:00:00 2001 From: lucasbutzke Date: Mon, 28 Jul 2025 22:35:48 -0400 Subject: [PATCH] [RTOP-26] Fix compilation status --- webserver/webserver.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/webserver/webserver.py b/webserver/webserver.py index 5ba7a7e..aedefec 100644 --- a/webserver/webserver.py +++ b/webserver/webserver.py @@ -58,18 +58,24 @@ def restapi_callback_get(argument: str, data: dict) -> dict: return {"runtime-logs": logs} elif argument == "compilation-status": - status = openplc_runtime.compilation_status_str - if status is not str: - _status = "No compilation in progress" - _status = status - try: logs = openplc_runtime.compilation_status() _logs = logs except Exception as e: logger.error(f"Error retrieving compilation logs: {e}") _logs = str(e) - + + status = openplc_runtime.compilation_status_str + if status is not str: + _status = "No compilation in progress" + if all(word in status for word in ["finished", "successfully"]): + _status = "success" + elif any(word in status for word in ["error", "failed", "compilation failed"]): + _status = "error" + else: + _status = "compiling" + logger.debug(f"Compilation status: {_status}, logs: {_logs}") + return {"status": _status, "logs": _logs} elif argument == "status":