Add support for configuring load balancing strategy

This commit is contained in:
Owen
2026-10-12 16:47:12 -04:00
parent cccc2d1200
commit b43709903d
12 changed files with 149 additions and 0 deletions
+19
View File
@@ -2,6 +2,7 @@ import "@server/extendZod";
import { assertEqualsObj } from "@test/assert";
import {
buildHttpLoadBalancerServers,
buildLoadBalancingStrategy,
buildTcpUdpLoadBalancerServers
} from "./loadBalancer";
import type { TargetWithSite } from "./types";
@@ -75,6 +76,24 @@ function runTests() {
);
}
assertEqualsObj(
buildLoadBalancingStrategy("wrr"),
{},
"Default wrr strategy should be omitted"
);
assertEqualsObj(
buildLoadBalancingStrategy(null),
{},
"Missing strategy should be omitted"
);
for (const strategy of ["p2c", "hrw", "leasttime"]) {
assertEqualsObj(
buildLoadBalancingStrategy(strategy),
{ strategy },
`${strategy} strategy should be emitted`
);
}
console.log("All load balancer endpoint tests passed!");
}