Kubolt
Project type: Open source
Most teams manage Helm-based clusters with a tangle of shell scripts. Kubolt is one Go binary that reads a YAML manifest, resolves dependencies into a DAG, runs installs and backups in parallel, and stays safe under Ctrl-C — with a Bubble Tea TUI for humans and plain-line output for CI.
The Challenge
Helm shell scripts grow into untraceable trees. PVC backups via kubectl exec are easy to corrupt if interrupted mid-run. Teams need parallel installs that still respect dependency order — and CI pipelines and humans want completely different output from the same tool.
Our Approach
- Single Go binary — no runtime dependencies beyond kubectl, helm, ssh, and tar — drop it on any operator's laptop or CI runner
- Declarative kubolt.yaml manifest declares apps, dependencies, and per-app backup config (filesystem or pg_dump)
- Topological sort + semaphore-gated parallel execution — installs that can run in parallel do, the rest wait for their dependencies
- Interrupt-safe PVC backups: scales replicas to 0, streams tar over SSH, restores replica counts on SIGINT/SIGTERM no matter where the run was killed
- Postgres backups discover the database from the container's env vars and run pg_dump via kubectl exec
- Dual renderer — Bubble Tea v2 TUI for interactive runs, plain prefixed lines for CI logs — same binary, same flags
What It Achieved
- Tens of Helm shell scripts collapse into one manifest the whole team can read and review
- Parallel installs that respect dependencies cut deploy time without manual orchestration
- Backups are safe to Ctrl-C — cluster state is always restored, no matter when the interrupt arrives
- The same binary runs interactively and in CI without flag gymnastics
Tech Stack
GoBubble Tea v2HelmkubectlSSHtarpg_dumpYAMLGoroutinesSemaphore concurrency
Need a custom CLI for your team's infrastructure?
If your team's runbook is twenty bash scripts, we'll fold it into one tested binary.
Book a discovery call