Repository navigation
v0.2.0
Production Readiness Release
This release makes cloud-vinyl production-ready by implementing the critical startup and lifecycle components from the architecture specification.
New Features
- Bootstrap VCL via ConfigMap — operator creates a placeholder VCL returning 503 "Cache initializing". Varnish starts cleanly without depending on the operator for initial VCL.
- VCL-aware readiness probe — agent
/healthreturns 503 until operator pushes real VCL. Pods are not Ready until functional. - Hash-based VCL naming — VCL name is
<namespace>-<name>-<hash[:8]>, preventing "Already a VCL named ..." errors on VCL updates.
Fixes
-j noneflag for non-root varnish operation (architecture §8.3 H4-Fix)- preStop hook with
sleep 5for graceful shutdown during rolling updates (§3.3 K3-Fix)
Startup flow
- Operator creates ConfigMap with bootstrap VCL → StatefulSet
- Varnish starts with bootstrap VCL → serves 503
- Agent
/healthreturns 503 → pod NOT Ready - Operator pushes real VCL with hash-based name
- Agent
/healthreturns 200 → pod Ready → traffic routed
Previous fixes included
- Per-namespace shared agent token (#9)
- Varnish admin CLI auth fix (challenge extraction)
- Service DNS for backends
- Open NetworkPolicy for HTTP traffic
- emptyDir volumes for varnish writable directories
- VARNISH_HTTP_PORT=8080 for stock image compatibility