2026-03-17 19:00:44 -04:00
|
|
|
#!/bin/sh
|
|
|
|
|
# CAKE entrypoint — bridge Istio abstract socket to file socket, then exec relay.
|
|
|
|
|
#
|
|
|
|
|
# Traffic flow:
|
2026-06-10 19:29:51 -04:00
|
|
|
# Client → Envoy → @istio-proxy.sock (abstract) → socat → /tmp/local.sock → Buzz
|
|
|
|
|
# K8s probes → 0.0.0.0:8080 → Buzz (direct, no Istio)
|
|
|
|
|
# Prometheus → 0.0.0.0:9102/metrics → Buzz
|
2026-03-17 19:00:44 -04:00
|
|
|
set -eu
|
|
|
|
|
|
|
|
|
|
SIDECAR_SOCKET="${SIDECAR_LISTENER_BIND:-@istio-proxy.sock}"
|
|
|
|
|
LOCAL_SOCKET="/tmp/local.sock"
|
|
|
|
|
|
|
|
|
|
# Clean up stale socket file from previous run.
|
|
|
|
|
rm -f "${LOCAL_SOCKET}"
|
|
|
|
|
|
|
|
|
|
# Bridge: Envoy writes to abstract socket → socat → app reads from file socket.
|
|
|
|
|
# Only start if SIDECAR_LISTENER_BIND is set (i.e., running in CAKE).
|
|
|
|
|
if [ -n "${SIDECAR_LISTENER_BIND:-}" ]; then
|
|
|
|
|
socat "ABSTRACT-LISTEN:${SIDECAR_SOCKET#@},fork" "UNIX-CONNECT:${LOCAL_SOCKET}" &
|
2026-06-10 19:29:51 -04:00
|
|
|
export BUZZ_UDS_PATH="${LOCAL_SOCKET}"
|
2026-03-17 19:00:44 -04:00
|
|
|
fi
|
|
|
|
|
|
2026-06-10 19:29:51 -04:00
|
|
|
export BUZZ_HEALTH_PORT="${BUZZ_HEALTH_PORT:-8080}"
|
|
|
|
|
export BUZZ_METRICS_PORT="${BUZZ_METRICS_PORT:-9102}"
|
2026-03-17 19:00:44 -04:00
|
|
|
|
2026-06-10 19:29:51 -04:00
|
|
|
exec /code/buzz-relay
|