Refactor wireguard to use a different config dir instead of /etc/wireguard

This commit is contained in:
2026-09-13 13:37:48 +01:00
parent 06cf72b2c9
commit 42224c94d3
10 changed files with 192 additions and 34 deletions
@@ -0,0 +1,21 @@
import { describe, expect, test } from "bun:test";
import deriveWireguardInterfaceName from "./derive-wireguard-interface-name";
describe("deriveWireguardInterfaceName", () => {
test("derives interface name from host id", () => {
expect(deriveWireguardInterfaceName({ host_id: 0 })).toBe("wgui0");
expect(deriveWireguardInterfaceName({ host_id: 1 })).toBe("wgui1");
expect(deriveWireguardInterfaceName({ host_id: 7 })).toBe("wgui7");
});
test("uses a project-scoped prefix, never stock wgN", () => {
expect(deriveWireguardInterfaceName({ host_id: 0 })).not.toBe("wg0");
expect(deriveWireguardInterfaceName({ host_id: 1 })).not.toBe("wg1");
});
test("prefix matches wg-quick interface name requirements (<= 15 chars)", () => {
expect(deriveWireguardInterfaceName({ host_id: 0 }).length).toBeLessThanOrEqual(
15,
);
});
});