authorgravatar for git@paperclover.netclover caruso <git@paperclover.net> 2026-10-04 19:07:30-07:00
committergravatar for git@paperclover.netclover caruso <git@paperclover.net> 2026-10-04 19:07:44-07:00
log3e5b543f4af3869aa52575fa8be3e5976786d8bb
tree2af4dc7e4662789ebe614fb2beefa79442aab354
parent189fed0e01939f288c29955e66b5a4c8713abc2b
signature Signed by SSH key SHA256:52mNGHRsVFBDED9IAX5pe+LRWUefqTbxEReunq21QvU

Keep Shale login stable by disabling its crashing trace exporter

The pinned Shale image panics with Overflow while serializing an OpenTelemetry export after login. Use its default entrypoint without tracing, and remove the exporter dependency and unused trace metadata. Existing OAuth configuration and repository state remain intact. Validation: 12 real OAuth logins across two disposable identities, authenticated settings, and a retained session after restart; all fixture identities and containers removed. Production secret preflight passes after importing the VPN credentials. Assisted-by: gpt-6.1-sol

1 files changed, 0 insertions(+), 8 deletions(-)

service/shale/service.pkl-8
...@@ -5,9 +5,6 @@ import "../keycloak/service.pkl" as keycloak...@@ -5,9 +5,6 @@ import "../keycloak/service.pkl" as keycloak
5meta {5meta {
6 name = "Shale"6 name = "Shale"
7}7}
8traceServiceName = "astheno.shale"
9dependsOn { "victoria-traces" }
10
11requirements {8requirements {
12 new keycloak.OpenIDClient {9 new keycloak.OpenIDClient {
13 clientId = module.id10 clientId = module.id
...@@ -17,8 +14,6 @@ requirements {...@@ -17,8 +14,6 @@ requirements {
1714
18container {15container {
19 image = "docker.io/astheno/shale@sha256:ece987e25ebe67275fbe105b1b03e650a9b3adfe716928beb717cde1d32c9652"16 image = "docker.io/astheno/shale@sha256:ece987e25ebe67275fbe105b1b03e650a9b3adfe716928beb717cde1d32c9652"
20 entrypoint = "/bin/sh"
21 args { "-c"; "exec /app/astheno-shale --port 8000 --datadir /data --otel-exporter-otlp-traces-endpoint \"$STUDIO_TRACES_ENDPOINT\"" }
22 extraHosts { "\(keycloak.container.http.hostname):host-gateway" }17 extraHosts { "\(keycloak.container.http.hostname):host-gateway" }
2318
24 http {19 http {
...@@ -55,9 +50,6 @@ container {...@@ -55,9 +50,6 @@ container {
55 ["SESSION_SECRET"] = "${secret.own.session_secret}"50 ["SESSION_SECRET"] = "${secret.own.session_secret}"
56 ["OAUTH2_CLIENT"] = "oidc,\(keycloak.container.http.hostname)/realms/master|${secret.oidc.clientId}|${secret.oidc.clientSecret}"51 ["OAUTH2_CLIENT"] = "oidc,\(keycloak.container.http.hostname)/realms/master|${secret.oidc.clientId}|${secret.oidc.clientSecret}"
57 }52 }
58 envTemplate = """
59 {{ range nomadService 1 (env "NOMAD_ALLOC_ID") "victoria-traces" }}STUDIO_TRACES_ENDPOINT=http://\(module.nomadHostPort)/insert/opentelemetry/v1/traces{{ end }}
60 """
61}53}
6254
63secrets {55secrets {