Skip to content

Releases: rileyseaburg/cluster-ci-cache

🚀 Cluster CI Cache v0.1.0 — First MVP Release

Choose a tag to compare

@rileyseaburg rileyseaburg released this 30 Jun 21:23

🚀 Cluster CI Cache v0.1.0

In-cluster, cache-agnostic CI build cache for Kubernetes.

First production-oriented MVP. Rust workspace, Kubernetes deployment, and end-to-end cache cycle verified on a live 7-node cluster.


✨ What's Included

Binaries

  • ci-cache — CLI for restore/save/docker commands (6.3 MB)
  • ci-cache-server — HTTP API server with manifest/blob management (7.2 MB)
  • ci-cache-agent — Node-local DaemonSet agent (2.8 MB)

Cache Types

  • 🦀 Rust/Cargo~/.cargo/registry, ~/.cargo/git, target/
  • 📦 npm~/.npm
  • 📦 pnpm — pnpm store
  • 🧶 yarn — yarn cache
  • 🐳 Docker/BuildKit — registry-type cache helpers

Backends

  • 💾 Filesystem/PVC — local dev and simple clusters
  • ☁️ S3/MinIO — production with shared storage (SigV4 signed)

Security Features

  • ✅ Content-addressed storage with sha256 digests
  • ✅ Path traversal protection (custom CIC1 archive format)
  • ✅ Decompression bomb prevention
  • ✅ Digest verification on upload AND restore
  • ✅ Namespace isolation
  • ✅ Atomic manifest publishing
  • ✅ Save sessions preventing partial manifests

Kubernetes

  • ✅ Deployment (2x server replicas)
  • ✅ DaemonSet (agent on every node)
  • ✅ Service, ServiceAccount, RBAC
  • ✅ ConfigMap, Secret, PVC, NetworkPolicy
  • ✅ Helm chart
  • ✅ Health/readiness probes
  • ✅ Prometheus metrics

📦 Install

Quick install (CLI + server + agent)

curl -fsSL https://github.com/rileyseaburg/cluster-ci-cache/releases/download/v0.1.0/install.sh | bash

Docker image

docker pull registry.quantum-forge.net/cluster-ci-cache/ci-cache:v0.1.0

Build from source

git clone https://github.com/rileyseaburg/cluster-ci-cache.git
cd cluster-ci-cache
cargo build --release

🚀 Deploy to Kubernetes

git clone https://github.com/rileyseaburg/cluster-ci-cache.git
cd cluster-ci-cache
kubectl apply -k deploy/k8s/

📊 Verified

  • 13 tests passing (11 unit + 2 integration)
  • Live on cluster: 2x server replicas + 6x agent DaemonSet pods across 7 nodes
  • E2E cycle verified: cache miss → save → cache hit → file restore ✅
  • Metrics confirmed: ci_cache_hits_total, ci_cache_bytes_uploaded_total, etc.

📋 Stats

Metric Value
Rust source 3,424 lines across 6 crates
Docker image 101 MB (linux/amd64)
Test suite 13 tests
Server replicas 2
Agent pods 6 (DaemonSet)

Full docs: README.md