File tree Expand file tree Collapse file tree 1 file changed +19
-0
lines changed Expand file tree Collapse file tree 1 file changed +19
-0
lines changed Original file line number Diff line number Diff line change @@ -5,4 +5,23 @@ is always in a valid state.
55
66The CI infrastructure is described in detail in the [ rustc-dev-guide] [ rustc-dev-guide ] .
77
8+ ## ` rust-lang/rust ` CI invariant
9+
10+ Changes to the default and ` beta ` /` stable ` release branches of the [ rust-lang/rust] repository go
11+ through two sets of CI jobs:
12+
13+ 1 . ** PR CI** . This is a fast and restricted set of CI jobs that run against PRs to provide faster
14+ feedback.
15+ 2 . ** Merge CI** : This is the full set of CI jobs that all changes to [ rust-lang/rust] must pass.
16+ This includes, but are not limited to, e.g. testing jobs for all Tier 1 targets.
17+
18+ We enforce an [ rust-lang/rust] CI invariant where ** PR CI jobs are a subset of Merge CI jobs modulo
19+ carve outs** . The carve out differences between PR CI and Merge CI jobs are tracked in
20+ < https://github.com/rust-lang/rust/issues/144259 > . The reason for this subset invariant is because
21+ if you have PR-only CI jobs, a PR can fail the PR-only jobs but pass the Merge CI. This can cause
22+ all subsequent PR CI to fail, in _ completely unrelated PRs_ , which is very frustrating for other
23+ contributors.
24+
25+
26+ [ rust-lang/rust ] : https://github.com/rust-lang/rust
827[ rustc-dev-guide ] : https://rustc-dev-guide.rust-lang.org/tests/ci.html
You can’t perform that action at this time.
0 commit comments