Prow! Leveraging Developer-Centric CI for Your OSS Project!
summary
Prow is a Kubernetes-native CI that runs tests as Kubernetes pods by creating a prowjob CRD (hook → trigger → prowjob → plank → pod → cryer → GitHub status). Large projects run hundreds of PRs (roughly 100–500 PRs every 15 days in Kubernetes) and use tide merge pools to batch-test and auto-merge. Deployments require GCS buckets for artifacts, separate job clusters for isolation, and secrets for a GitHub App; upstream uses a helper called tackle for GKE but manual deploy is possible.
AI-written summary · about
chapters (17)
- 0:00Start
- 1:27Arsh Sharma
- 1:46Nabarun Pal • Senior Engineer at VMware
- 2:33What is Prow?
- 8:36Architecture
- 14:38Tide
- 16:58Testgrid
- 18:38Inrepo
- 19:12Centralizing configuration
- 24:04Creating the GitHub app
- 24:15Add hook URL
- 25:25Note App ID and Private Key
- 25:39Run tackle
- 27:42Apply the Prow CRDS
- 28:12Create a GCS bucket
- 28:43Generate a HMAC token
- 31:02Benefits of using Prow
related talks
36mGuidelines for Achieving Project Release Maturity
30mBringing Continuous Delivery to Open Source
43m'ProTalking' Your Way into Open Source
39mProject Vs. Product - Finding the Right Balance in Corporate Open...
35mPackit: 2 years of upstream ⟷ downstream
48mIntegrating upstream projects downstream
46mBuilding Developer Community One Pull Request at a Time
27mMechanics of releasing a large project: Leadership learnings from Kubernetes releases
