feat: make route control and replay configurable per environment/app
All checks were successful
CI / cleanup-branch (push) Has been skipped
CI / build (push) Successful in 1m16s
CI / docker (push) Successful in 1m4s
CI / deploy-feature (push) Has been skipped
CI / deploy (push) Successful in 41s

Added routeControlEnabled and replayEnabled to ResolvedContainerConfig,
flowing through the three-layer config merge (global -> env -> app).
Both default to true. Admins can disable them per environment (e.g.
prod) via the defaultContainerConfig JSONB, or per app via the app's
containerConfig JSONB.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
hsiegeln
2026-04-11 11:56:13 +02:00
parent 4da81b21ba
commit 3501f32110
3 changed files with 8 additions and 4 deletions

View File

@@ -28,7 +28,9 @@ public final class ConfigMerger {
stringVal(appConfig, envConfig, "routingDomain", global.routingDomain()),
stringVal(appConfig, envConfig, "serverUrl", global.serverUrl()),
intVal(appConfig, envConfig, "replicas", 1),
stringVal(appConfig, envConfig, "deploymentStrategy", "blue-green")
stringVal(appConfig, envConfig, "deploymentStrategy", "blue-green"),
boolVal(appConfig, envConfig, "routeControlEnabled", true),
boolVal(appConfig, envConfig, "replayEnabled", true)
);
}

View File

@@ -17,7 +17,9 @@ public record ResolvedContainerConfig(
String routingDomain,
String serverUrl,
int replicas,
String deploymentStrategy
String deploymentStrategy,
boolean routeControlEnabled,
boolean replayEnabled
) {
public long memoryLimitBytes() {
return (long) memoryLimitMb * 1024 * 1024;