Skip to content

Commit a072efd

Browse files
committed
testing strategy: add policy for non-blocking jobs by path
This was motivated in part by kubernetes/test-infra#33463 (comment) and is part of an effort to document best practices.
1 parent ade28d6 commit a072efd

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

contributors/devel/sig-testing/testing-strategy.md

+15
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,21 @@ The Kubernetes job uses [prow](https://prow.k8s.io) to implement the CI system.
2626
- **Postsubmit:** Runs after code is merged. Useful for building artifacts.
2727
- **Periodic:** Runs at scheduled intervals. Ideal for monitoring trends and catching regressions.
2828

29+
#### Non-blocking triggered by path
30+
31+
Usually, blocking pre-submit jobs run by default and non-blocking jobs don't. The `/test` command
32+
has to be used explicitly for such non-blocking jobs. It is possible to configure such
33+
jobs so that they [run automatically when certain paths are modified](https://github.com/kubernetes/test-infra/blob/ee70308f09c10f7cd933c26c98acc7ebf785d436/config/jobs/kubernetes/sig-node/sig-node-presubmit.yaml#L3201-L3202).
34+
35+
Use this with care! A non-blocking job that fails confuses other contributors
36+
who are not familiar with the job or the failures. If it runs too often, it
37+
wastes CI resources. The guidelines for setting up such a job are:
38+
39+
* The job owners are responsive and react to problems with the job.
40+
* The job must have a low failure rate to avoid confusion in drive-by PRs.
41+
* The importance of the feature must justify the extra CI resources (depends
42+
on how often it gets triggered).
43+
2944
#### SIG Release Blocking and Informing jobs
3045

3146
SIG Release maintains two sets of jobs that decide whether the release is

0 commit comments

Comments
 (0)