What it does
Prow is a Kubernetes-based CI/CD system for GitHub repositories. It schedules presubmit jobs for pull requests, postsubmit jobs after changes land, and scheduled work. Its components can report job results to GitHub and automate repository policies, commands, and merge workflows.
Separate service and build clusters
Prow is an operator-run system rather than a hosted build queue. The documented architecture places its control services in a Kubernetes service cluster and runs jobs in one or more build clusters. After configuring GitHub access and job configuration, a team can define presubmits for pull requests, postsubmits for pushes, and scheduled jobs. Crier reports results to GitHub, while Prow's Tide component can automate merge policy and batch testing.
This design suits organizations that need control over CI job scheduling and repository automation. It also means the team must handle Kubernetes capacity, credentials, configuration, and maintenance. The official Prow repository is the current source home; older references to kubernetes/test-infra refer to its previous location, not a second product. The source repository carries the Apache 2.0 license.
Strengths
- Supports presubmit, postsubmit, and scheduled job types.
- Reports job status to GitHub and includes components for repository automation.
- Tide can apply merge policy and batch-test pull requests before merging.
- Separates service components from the Kubernetes build clusters that execute jobs.
Watch out for
- The documented architecture requires a Kubernetes service cluster and one or more build clusters, so the operator owns infrastructure and maintenance.
Best for
- Organizations operating Kubernetes-based CI for GitHub repositories
- Projects that need custom pull-request policy and automated merge workflows
- Teams that want to control the infrastructure that executes CI jobs
Sources
- Overview | Prow (Oct 26, 2026)
- ProwJobs | Prow (Oct 26, 2026)
- Prow (Oct 26, 2026)
- Apache License (Oct 26, 2026)
- Tide | Prow (Oct 26, 2026)
