Pragmatic, scalable, and ergonomic CI/CD using Github Actions and K8s.
summary
Describes migrating Tesla Energy CI/CD to GitHub Actions with autoscaling Kubernetes runners using actions-runner-controller, standardizing CI/CD with reusable workflows and composite actions, and adding automated tests (about 15–20 test cases). Implementation bolts down ~500 lines for CI and ~700 for CD but consumes 10–30 lines per repo. Autoscaling runners avoid idle cost, running in production for over a year; SBT caching cuts a medium project build from 213s to 40s (~5×).
AI-written summary · about
chapters (13)
- 0:00Introduction and context
- 3:22Why CI/CD matters for us
- 4:04GitHub Actions primitives
- 9:00Reusable workflows for CI
- 11:47Reusable workflows for CD
- 13:52Composite actions for steps
- 15:17Testing reusable workflows
- 17:25Autoscaling GitHub Runners
- 23:46Optimizing Scala and sbt
- 27:40Pros and cons of GitHub Actions
- 28:23Actions Runner Controller benefits
- 29:06Room for improvement
- 29:26Q&A and closing
related talks
43mRewriting an Old CI/CD on GitHub Actions for 280 Contributors?
48mCICD with Github Actions
46mQuality Beyond Testing: Jenkins to GitHub Actions Migration: Optimized Processes & QA
55mGitHub Actions - CI:CD and more
36mRunning the Runners: How CNCF Powers GitHub Actions at Scale
47mLights, Camera, GitHub Actions!
37mGitHub Actions + K8S to level up software dev
19mHow we migrated the CI / CD of our Android app to GitHub Actions
