ci: prevent changes to markdown files to execute the full test suite #5745
  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.
  
    
  
    
Change Summary
Currently, the
Test CasesCI workflow will run even when a push changes only markdown files (e.g., README.md).With these changes, a push that changes only markdown files will not trigger the workflow, thus speeding up the project's CI and saving compute resources 🌱 (see below for quantity).
Example
Here is an example of the behaviour described above: the commit
9230d86changed these files:dist/README.mdand, when pushed, triggered this workflow run, which ran for ~4 CPU minutes. With the proposed changes, these 4 CPU minutes would have been saved, clearing the queue for other workflows and speeding up the CI of the project, while also saving resources in general.Note that this is a single example out of 107 examples over the last few months; a lower estimate for the accumulated gain is 5 CPU hours, but the actual number could be higher because our cutoff date is late May and our data go only a few months back.
This only affects the
pushtrigger and not thepull_requesttrigger, so the actions related to pull requests (opening, pushing new commits on an open PR, closing) will not be affected, only the pushes to branches which do not have an open pull request.Click here to see all the recent CI runs triggered by markdown files.
commit 9230d86 => run url
commit bbc297a => run url
commit 11abbb2 => run url
commit c22a5dc => run url
commit 5c53e34 => run url
commit c87e4db => run url
commit 71564c6 => run url
commit b7cec41 => run url
commit 08edad2 => run url
commit c29d2ac => run url
commit 05d41d2 => run url
commit 9436d4b => run url
commit e3fa46d => run url
commit 494f730 => run url
commit b9e4838 => run url
commit 53cc6b0 => run url
commit 6cf4cba => run url
commit 1fd1530 => run url
commit 6b9b0fd => run url
commit bcc8216 => run url
commit 5e1d631 => run url
commit 388eb8c => run url
commit 95ad38c => run url
commit 75403d7 => run url
commit f53b5e8 => run url
commit af4245e => run url
commit 714f012 => run url
commit 6a497bf => run url
commit fe252cc => run url
commit e7f18e8 => run url
commit fc8a5c6 => run url
commit 6b8a8c3 => run url
commit c268407 => run url
commit e133ea9 => run url
commit c8651b8 => run url
commit 3ad3d41 => run url
commit 2c4bae5 => run url
commit 8c0cc3d => run url
commit 35558de => run url
commit 70cd9c6 => run url
commit e89db7d => run url
commit 1e74582 => run url
commit ab5175b => run url
commit e3ce2bc => run url
commit 05be387 => run url
commit 81a87e7 => run url
commit 4449ed5 => run url
commit cc43ea6 => run url
commit 398cd04 => run url
commit 2782f33 => run url
commit 58293de => run url
commit a26768d => run url
commit 8071147 => run url
commit 6aea9e7 => run url
commit 746033d => run url
commit f10902b => run url
commit d507b44 => run url
commit e9bc24d => run url
commit b5a425b => run url
commit 295436d => run url
commit 34fe871 => run url
commit 6de8119 => run url
commit ac630f5 => run url
commit d26ea9f => run url
commit ea3fb61 => run url
commit 1717ef1 => run url
commit e25a042 => run url
commit 291a950 => run url
commit 75f26a4 => run url
commit c2586a2 => run url
commit 690c1a0 => run url
commit 8f47aa9 => run url
commit 74c7ec2 => run url
commit a5177ad => run url
commit bdc03d5 => run url
commit f97468c => run url
commit 08e54d6 => run url
commit ba6fe1d => run url
commit f59eb17 => run url
commit 1037860 => run url
commit 686b399 => run url
commit e64e25f => run url
commit cd2adbd => run url
commit cf614ff => run url
commit 0efad06 => run url
commit 66baa9c => run url
commit 4e7cf3e => run url
commit 58bffa2 => run url
commit 8ba2997 => run url
commit c0ba898 => run url
commit b700ca6 => run url
commit 24c2bad => run url
commit 43ab4b9 => run url
commit 69b3ace => run url
commit 8e504a8 => run url
commit 1662942 => run url
commit f2159d1 => run url
commit 0c87115 => run url
commit c3b5363 => run url
commit f6fe0c3 => run url
commit 1975942 => run url
commit bb3fab9 => run url
commit c00feca => run url
commit 7b8a308 => run url
commit 39003bf => run url
commit 1899930 => run url
commit b34f82e => run url
Context
Hi,
We are a team of researchers from University of Zurich and we are currently working on optimizations in GitHub Actions workflows.
Thanks for your time on this.
Kindly let us know (here or in the email below) if you would like to ignore other file types or apply the filter to other workflows/triggers, or if you have any question whatsoever.
Best regards,
Konstantinos Kitsios
[email protected]
Changes proposed: