Streamlining Kubernetes Application CI/CD with Bazel
summary
Etsy describes a CI/CD pipeline that uses Bazel with rules_docker and rules_kubernetes to produce deterministic container images without the Docker daemon, push SHA-256 digests, and let Kubernetes’ pod-template hashing skip unnecessary rollouts. Builds are hermetic, cacheable and parallelizable (demo touches 43,533 targets), RBE provides remote execution and caching, and layered container generation avoids re-uploading unchanged layers. The result is a single pipeline that reliably decides which services actually need redeploying to GKE.
AI-written summary · about
chapters (30)
- 0:00Intro
- 0:10Welcome
- 3:20What is Etsy
- 3:40About Etsy
- 4:07About Etsy Search
- 4:56About Blaze
- 5:52About Linux Kernel
- 7:16Build Tools
- 8:13Builds are deterministic
- 8:56Builds have to be hermetic
- 9:20Try testing
- 9:46Parallelization
- 10:25Remote builds
- 10:59Languages
- 11:43dependency
- 12:09build files
- 15:46Reproducibility
- 17:24Solution
- 17:55How does it work
- 18:06Hashing inputs
- 21:22Deployment hashes
- 21:42CoopCTL version
- 22:15Container layers
- 22:51Container tips
- 23:32sha256
- 24:27Tilt
- 24:52CRDS
- 26:42Demo
- 28:05Clean Command
- 35:32Questions
related talks
36mUsing Bazel for Fast, Correct Docker Deployments
07mLightning Talk – Bazel & Kubernetes: Develop like it's production
15mReproducible research using Bazel
10mBuilding 1300 Container Images in 4 Minutes
08mLightning Talk – Speedy Scala Builds with Bazel at Databricks
01h 01mIntroduction to Bazel
37mDesigning Cloud Ready Applications
26mBuilding Go with Bazel
