Repository navigation
ci: a pull request that changes only docs skips CI - #449
Merged
Merged
Conversation
A pull request that touched only Markdown or docs/ ran every CI job. That spent runner time on changes that cannot break a build. The pull_request trigger now carries a paths filter that leaves those out. docs/coverage stays in, because the Coverage job regenerates the page under it. CI on a push now runs for main only. Before, it ran for every branch, so a docs-only pull request would have run CI through its push anyway, and every other pull request ran CI twice. If the filter is wrong, a pull request that needed CI merges without it. The push to main still runs the full suite, so the break shows on main instead of on the pull request. No check is required to merge, so a skipped run cannot block a pull request.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this changes
A pull request that changes only docs or Markdown no longer runs CI. The
pull_requesttrigger carries a paths filter that leaves outdocs/**andevery
.mdfile.docs/coverage/**stays in, because the Coverage jobregenerates the page there.
CI on a push now runs for
mainonly. Before, it ran on every branch. Leavingthat in place would make the filter a no-op, since a docs-only branch would
still run CI through its push. It also ran every pull request twice.
What to check
or a draft one, to get a run.
README.md-only change skips CI. One test asserts the README's metricstable against the running exporter. A README edit that breaks that table
shows on the push to
main, not on the pull request.CLA, which runson
pull_request_targetand is unaffected.Verification
The workflow YAML parses, and its
onblock reads back as written. This pullrequest changes a workflow, so its own CI run proves the trigger fires.