From e63a6e9b77d747e2cc1542124d6f9691bef0edb1 Mon Sep 17 00:00:00 2001 From: Fizza-Mukhtar Date: Sun, 1 Mar 2026 07:56:47 -0800 Subject: [PATCH] fix: treat local and wireguard sites as online for failover --- server/lib/traefik/getTraefikConfig.ts | 19 ++++++++---------- .../private/lib/traefik/getTraefikConfig.ts | 20 ++++++++----------- 2 files changed, 16 insertions(+), 23 deletions(-) diff --git a/server/lib/traefik/getTraefikConfig.ts b/server/lib/traefik/getTraefikConfig.ts index c55bad90d..1ce594dc8 100644 --- a/server/lib/traefik/getTraefikConfig.ts +++ b/server/lib/traefik/getTraefikConfig.ts @@ -477,7 +477,10 @@ export async function getTraefikConfig( // TODO: HOW TO HANDLE ^^^^^^ BETTER const anySitesOnline = targets.some( - (target) => target.site.online + (target) => + target.site.online || + target.site.type === "local" || + target.site.type === "wireguard" ); return ( @@ -491,10 +494,6 @@ export async function getTraefikConfig( return false; } - // Local sites don't report online status, always include them as fallback - if (target.site.type === "local") { - return true; - } // If any sites are online, exclude offline sites if (anySitesOnline && !target.site.online) { return false; @@ -609,7 +608,10 @@ export async function getTraefikConfig( servers: (() => { // Check if any sites are online const anySitesOnline = targets.some( - (target) => target.site.online + (target) => + target.site.online || + target.site.type === "local" || + target.site.type === "wireguard" ); return targets @@ -617,11 +619,6 @@ export async function getTraefikConfig( if (!target.enabled) { return false; } - - // Local sites don't report online status, always include them as fallback - if (target.site.type === "local") { - return true; - } // If any sites are online, exclude offline sites if (anySitesOnline && !target.site.online) { diff --git a/server/private/lib/traefik/getTraefikConfig.ts b/server/private/lib/traefik/getTraefikConfig.ts index 6a4463719..3f6c5fdc2 100644 --- a/server/private/lib/traefik/getTraefikConfig.ts +++ b/server/private/lib/traefik/getTraefikConfig.ts @@ -665,7 +665,10 @@ export async function getTraefikConfig( // TODO: HOW TO HANDLE ^^^^^^ BETTER const anySitesOnline = targets.some( - (target) => target.site.online + (target) => + target.site.online || + target.site.type === "local" || + target.site.type === "wireguard" ); return ( @@ -679,11 +682,6 @@ export async function getTraefikConfig( return false; } - // Local sites don't report online status, always include them as fallback - if (target.site.type === "local") { - return true; - } - // If any sites are online, exclude offline sites if (anySitesOnline && !target.site.online) { return false; @@ -798,7 +796,10 @@ export async function getTraefikConfig( servers: (() => { // Check if any sites are online const anySitesOnline = targets.some( - (target) => target.site.online + (target) => + target.site.online || + target.site.type === "local" || + target.site.type === "wireguard" ); return targets @@ -806,11 +807,6 @@ export async function getTraefikConfig( if (!target.enabled) { return false; } - - // Local sites don't report online status, always include them as fallback - if (target.site.type === "local") { - return true; - } // If any sites are online, exclude offline sites if (anySitesOnline && !target.site.online) {