logo

Kubernetes Prow Jobs - Day 2 Aspects and How to Navigate, Read & Write Them

2023-04-19

Authors:   Priyanka Saggu, Mario Jason Braganza


Summary

The presentation discusses the anatomy and examples of Brow Jobs in the Kubernetes project, emphasizing the importance of testing and maintaining infrastructure.
  • Brow Jobs are periodic, presubmit, and postsubmit jobs that help automate testing and deployment in the Kubernetes project
  • The anatomy of a Brow Job includes fields such as name, interval, cluster, and job type
  • Examples of Brow Jobs in the Kubernetes project include syncing enhancement proposals and tracking bugs
  • Testing and maintaining infrastructure is crucial for the success of Brow Jobs and requires collaboration and communication among team members
One example of a Brow Job discussed in the presentation is a job that syncs enhancement proposals from the Kubernetes enhancements repository to a tracking board every six hours. This job helps the team keep track of new features and ensures that they are properly documented and tracked.

Abstract

Are you curious to know how projects in the Kubernetes ecosystem test code changes using Prow CI/CD? And how those tests are automated using Prow jobs? Do you want to learn how to read and navigate the source code of hundreds of existing Prow jobs, that help ensure the latest Kubernetes releases meet quality standards, and work across cloud providers, container engines, and networking plugins? If any of this interests you, this talk is for you! There are many resources available today that cover Day 0 & Day 1 aspects of deploying and using Prow as a testing tool, but something that covers reading & understanding existing Kubernetes Prow jobs is still needed. This talk aims to fill in these gaps, to cover the Day 2 aspects of using Prow as a testing tool, i.e. to help users gain better insight by reading & navigating through existing Prow jobs written for various Kubernetes projects, (and eventually to write new ones.) To that end, this talk will address the following: * What Prow Jobs are, their different types & the anatomy of a prow job * Dive into the code of existing Prow jobs running Kubernetes tests and learn how to locally replicate, build and diagnose them * Introduction to Spyglass & Testgrid, and how to use them to read test statistics & generate useful CI signals

Materials: