Ensure WebUI always loads even if MCP/watcher fail
- Wrap MCP server and watcher startup in try/except. - Log warnings but never block WebUI launch.
This commit is contained in:
+17
-6
@@ -11,6 +11,9 @@ Optionally launches:
|
||||
|
||||
import os
|
||||
import threading
|
||||
import logging
|
||||
|
||||
logger = logging.getLogger("scraibe.__main__")
|
||||
|
||||
from .webui import create_app
|
||||
|
||||
@@ -34,15 +37,23 @@ def _run_mcp_server():
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
# Optionally start MCP server in background
|
||||
# Optionally start MCP server in background (non-blocking)
|
||||
mcp_enabled = os.getenv("MCP_SERVER_ENABLED", "false").strip().lower() in ("true", "1", "yes")
|
||||
if mcp_enabled:
|
||||
t = threading.Thread(target=_run_mcp_server, daemon=True)
|
||||
t.start()
|
||||
try:
|
||||
t = threading.Thread(target=_run_mcp_server, daemon=True)
|
||||
t.start()
|
||||
logger.info("MCP server started in background.")
|
||||
except Exception as e:
|
||||
logger.warning("Failed to start MCP server (WebUI will continue): %s", e)
|
||||
|
||||
# Optionally start watch-folder mode
|
||||
from .watcher import start_watcher
|
||||
start_watcher()
|
||||
# Optionally start watch-folder mode (non-blocking)
|
||||
try:
|
||||
from .watcher import start_watcher
|
||||
start_watcher()
|
||||
logger.info("Watch-folder mode started.")
|
||||
except Exception as e:
|
||||
logger.warning("Failed to start watch-folder mode (WebUI will continue): %s", e)
|
||||
|
||||
# Always start WebUI (Gradio)
|
||||
create_app()
|
||||
|
||||
Reference in New Issue
Block a user