mirror of
https://github.com/unshackle-dl/unshackle.git
synced 2026-05-17 06:09:29 +00:00
fix(gluetun): support WireGuard VPN ready detection
WireGuard is stateless and never emits the OpenVPN-specific "initialization sequence completed" log line, causing the readiness check to always time out. Also accept "public ip address is" which gluetun logs once the WireGuard tunnel is up. Closes #99
This commit is contained in:
@@ -1052,7 +1052,7 @@ class Gluetun(Proxy):
|
|||||||
# Gluetun needs both proxy listening AND VPN connected
|
# Gluetun needs both proxy listening AND VPN connected
|
||||||
# The proxy starts before VPN is ready, so we need to wait for VPN
|
# The proxy starts before VPN is ready, so we need to wait for VPN
|
||||||
proxy_ready = "[http proxy] listening" in all_logs
|
proxy_ready = "[http proxy] listening" in all_logs
|
||||||
vpn_ready = "initialization sequence completed" in all_logs
|
vpn_ready = "initialization sequence completed" in all_logs or "public ip address is" in all_logs
|
||||||
|
|
||||||
if proxy_ready and vpn_ready:
|
if proxy_ready and vpn_ready:
|
||||||
# Give a brief moment for the proxy to fully initialize
|
# Give a brief moment for the proxy to fully initialize
|
||||||
@@ -1235,10 +1235,10 @@ class Gluetun(Proxy):
|
|||||||
duration_ms=duration_ms,
|
duration_ms=duration_ms,
|
||||||
)
|
)
|
||||||
raise RuntimeError(
|
raise RuntimeError(
|
||||||
f"Region mismatch for {container['provider']}:{container['region']}: "
|
f"Region mismatch for {container['provider']}:{container['region']}: "
|
||||||
f"Expected '{expected_code}' but got '{actual_country}' "
|
f"Expected '{expected_code}' but got '{actual_country}' "
|
||||||
f"(IP: {ip_info.get('ip')}, City: {ip_info.get('city')})"
|
f"(IP: {ip_info.get('ip')}, City: {ip_info.get('city')})"
|
||||||
)
|
)
|
||||||
|
|
||||||
# Verification successful - store IP info in container record
|
# Verification successful - store IP info in container record
|
||||||
if query_key in self.active_containers:
|
if query_key in self.active_containers:
|
||||||
|
|||||||
Reference in New Issue
Block a user