fix: Auto-restore servers after haproxy_reload
haproxy_reload now automatically restores server configurations from servers.json after a successful reload, preventing service disruption. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1267,13 +1267,22 @@ def haproxy_get_connections(backend: str = "") -> str:
|
||||
def haproxy_reload() -> str:
|
||||
"""Reload HAProxy configuration (validates config first).
|
||||
|
||||
After reload, automatically restores server configurations from servers.json.
|
||||
|
||||
Returns:
|
||||
Success message or error details if validation/reload failed
|
||||
Success message with restored server count, or error details if failed
|
||||
"""
|
||||
success, msg = reload_haproxy()
|
||||
if not success:
|
||||
return msg
|
||||
return "HAProxy configuration reloaded successfully"
|
||||
|
||||
# Restore servers from config after reload
|
||||
try:
|
||||
restored = restore_servers_from_config()
|
||||
return f"HAProxy configuration reloaded successfully ({restored} servers restored)"
|
||||
except Exception as e:
|
||||
logger.error("Failed to restore servers after reload: %s", e)
|
||||
return f"HAProxy reloaded but server restore failed: {e}"
|
||||
|
||||
|
||||
@mcp.tool()
|
||||
|
||||
Reference in New Issue
Block a user