From f46ac1cafa76b99f97c3a361d6cd0c7d02f658be Mon Sep 17 00:00:00 2001 From: cyph3rasi Date: Sat, 7 Mar 2026 23:56:50 -0800 Subject: [PATCH] Normalize updater status after self-restart bug --- docker/host-updater.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/docker/host-updater.py b/docker/host-updater.py index d1743fc..761c308 100755 --- a/docker/host-updater.py +++ b/docker/host-updater.py @@ -49,6 +49,29 @@ def load_status(): return json.load(handle) +def normalize_status_on_startup(): + status = load_status() + + if status.get("status") == "error" and status.get("lastExitCode") == -15: + status.update({ + "status": "success", + "message": "Synapsis update completed.", + "lastExitCode": 0, + "lastError": None, + "pid": None, + }) + save_status(status) + + if status.get("status") == "updating": + status.update({ + "status": "idle", + "message": "Ready to update.", + "lastError": None, + "pid": None, + }) + save_status(status) + + def save_status(status): with open(STATUS_FILE, "w", encoding="utf-8") as handle: json.dump(status, handle, indent=2) @@ -200,6 +223,8 @@ def main(): if os.path.exists(SOCKET_PATH): os.remove(SOCKET_PATH) + normalize_status_on_startup() + signal.signal(signal.SIGTERM, cleanup_socket) signal.signal(signal.SIGINT, cleanup_socket)