Skip to content
Branch: master
Find file History
Latest commit a7f5e06 Mar 22, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
apis/prowjobs Use Refs.String() Method to populate Repo data in started Feb 19, 2019
artifact-uploader Updated OWNERS files to include link to docs Jan 30, 2019
client Update codegen Nov 29, 2018
clonerefs Merge pull request #11044 from rlenferink/patch-1 Feb 4, 2019
cluster Bump prow from v20190322-1ad130161 to v20190322-a20dc306f Mar 22, 2019
cmd DRY out the string set flag implemenetation Mar 22, 2019
commentpruner Run hack/ Feb 26, 2018
cron Update bazel for imports Feb 6, 2019
entrypoint Updated OWNERS files to include link to docs Jan 30, 2019
external-plugins Github to GitHub Feb 28, 2019
genfiles Fix 48 typos. Nov 12, 2018
git Don't log at warning level in git client Mar 20, 2019
github Merge pull request #11448 from amwat/gerrit Mar 22, 2019
initupload Make use of record.FinalSHA and overwrite it in started.json Feb 21, 2019
kube Ensure local and default contexts are correct Mar 7, 2019
labels Lazily fetch labels in trustedPullRequest() Oct 29, 2018
metrics Improve Prow docs (docks?). Nov 1, 2018
phony Updated OWNERS files to include link to docs Jan 30, 2019
plank Merge pull request #11665 from midnightconman/jenkins-operator-defaul… Mar 9, 2019
pluginhelp Github to GitHub Feb 28, 2019
plugins Merge pull request #11448 from amwat/gerrit Mar 22, 2019
repoowners Github to GitHub Feb 28, 2019
spyglass Round the elapsed time to the nearest second. Mar 22, 2019
.gitignore Add an announcement about the Tide history page. Mar 14, 2019
Makefile fix prow image push override Oct 11, 2018
OWNERS Retire Joe from owners Sep 17, 2018 Add new Prow logo. Mar 11, 2019 Define environments PROW_CLUSTER_OVERRIDE and BUILD_CLUSTER_OVERRIDE Feb 18, 2019 Bump ghproxy, label_sync, branchprotector, and commenter with Prow. Mar 22, 2019
def.bzl Create prow_push, use it and prow_image everywhere Feb 21, 2019 Confirm human prow deployments Nov 9, 2018 Fixed typo in getting_started_deploy. Mar 18, 2019 Improve Prow docs (docks?). Nov 1, 2018 Add documentation on triggering behavior to Feb 13, 2019
logo_horizontal_solid.png Improve Prow docs (docks?). Nov 1, 2018

prow logo

Prow is a Kubernetes based CI/CD system. Jobs can be triggered by various types of events and report their status to many different services. In addition to job execution, Prow provides GitHub automation in the form of policy enforcement, chat-ops via /foo style commands, and automatic PR merging.

See the GoDoc for library docs. Please note that these libraries are intended for use by prow only, and we do not make any attempt to preserve backwards compatibility.

For a brief overview of how Prow runs jobs take a look at "Life of a Prow Job".

Functions and Features

  • Job execution for testing, batch processing, artifact publishing.
    • GitHub events are used to trigger post-PR-merge (postsubmit) jobs and on-PR-update (presubmit) jobs.
    • Support for multiple execution platforms and source code review sites.
  • Pluggable GitHub bot automation that implements /foo style commands and enforces configured policies/processes.
  • GitHub merge automation with batch testing logic.
  • Front end for viewing jobs, merge queue status, dynamically generated help information, and more.
  • Automatic deployment of source control based config.
  • Automatic GitHub org/repo administration configured in source control.
  • Designed for multi-org scale with dozens of repositories. (The Kubernetes Prow instance uses only 1 GitHub bot token!)
  • High availability as benefit of running on Kubernetes. (replication, load balancing, rolling updates...)
  • JSON structured logs.
  • Prometheus metrics.


Getting started

More details

Useful Talks

KubeCon 2018 EU

KubeCon 2018 China

KubeCon 2018 Seattle


Prow in the wild

Prow is used by the following organizations and projects:

Jenkins X uses Prow as part of Serverless Jenkins.

Contact us

If you need to contact the maintainers of Prow you have a few options:

  1. Open an issue in the kubernetes/test-infra repo.
  2. Reach out to the #prow channel of the Kubernetes Slack.
  3. Contact one of the code owners in prow/OWNERS or in a more specifically scoped OWNERS file.

Bots home

@k8s-ci-robot lives here and is the face of the Kubernetes Prow instance. Here is a command list for interacting with @k8s-ci-robot and other Prow bots.

You can’t perform that action at this time.