diff --git a/server/routers/olm/peers.ts b/server/routers/olm/peers.ts index c47c84a8..a8d6be9c 100644 --- a/server/routers/olm/peers.ts +++ b/server/routers/olm/peers.ts @@ -24,7 +24,7 @@ export async function addPeer( throw new Error(`Olm with ID ${clientId} not found`); } - sendToClient(olm.olmId, { + await sendToClient(olm.olmId, { type: "olm/wg/peer/add", data: { siteId: peer.siteId, @@ -49,7 +49,7 @@ export async function deletePeer(clientId: number, siteId: number, publicKey: st throw new Error(`Olm with ID ${clientId} not found`); } - sendToClient(olm.olmId, { + await sendToClient(olm.olmId, { type: "olm/wg/peer/remove", data: { publicKey, @@ -80,7 +80,7 @@ export async function updatePeer( throw new Error(`Olm with ID ${clientId} not found`); } - sendToClient(olm.olmId, { + await sendToClient(olm.olmId, { type: "olm/wg/peer/update", data: { siteId: peer.siteId, diff --git a/server/routers/traefik/getTraefikConfig.ts b/server/routers/traefik/getTraefikConfig.ts index 5101de84..4bbb13d3 100644 --- a/server/routers/traefik/getTraefikConfig.ts +++ b/server/routers/traefik/getTraefikConfig.ts @@ -352,12 +352,17 @@ export async function getTraefikConfig( if (resource.path && resource.pathMatchType) { priority += 1; // add path to rule based on match type + let path = resource.path; + // if the path doesn't start with a /, add it + if (!path.startsWith("/")) { + path = `/${path}`; + } if (resource.pathMatchType === "exact") { - rule += ` && Path(\`${resource.path}\`)`; + rule += ` && Path(\`${path}\`)`; } else if (resource.pathMatchType === "prefix") { - rule += ` && PathPrefix(\`${resource.path}\`)`; + rule += ` && PathPrefix(\`${path}\`)`; } else if (resource.pathMatchType === "regex") { - rule += ` && PathRegexp(\`${resource.path}\`)`; + rule += ` && PathRegexp(\`${resource.path}\`)`; // this is the raw path because it's a regex } }