Skip to content

Deliberately trigger CI workflows based on what files were changed#2213

Merged
alamb merged 3 commits intoapache:masterfrom
alamb:alamb/ci_trigger
Jul 28, 2022
Merged

Deliberately trigger CI workflows based on what files were changed#2213
alamb merged 3 commits intoapache:masterfrom
alamb:alamb/ci_trigger

Conversation

@alamb
Copy link
Contributor

@alamb alamb commented Jul 28, 2022

Which issue does this PR close?

Closes #2149

This is the final part of the CI workflow I have planned under the aegis of that #2149 😓

Rationale for this change

Right now we run almost all CI checks for all PRs even those that make no code changes (changes to README, etc) or changes to some other crate (e.g. change in arrow-flight can't affect parquet yet we run all the parquet checks anyways)

This increases PR times in two ways: 1 more checks need to complete and 2. we consume many github action builder minutes on useless tests, which increases the time spent waiting for a builder on the queue.

Of course, there is a real possibility that this change may miss running a CI check that causes master to fail -- but I think the improved PR speed and test specificity will make up for any such mishaps. We can also always go back to running all the tests on all PRs

What changes are included in this PR?

The basic idea is to run all tests on pushes to master (to keep master green) but only run the individual workflows on PRs that change files that could affect them.

Are there any user-facing changes?

No

@alamb alamb added the development-process Related to development process of arrow-rs label Jul 28, 2022
name: arrow_flight


# trigger for all PRs that touch certain files and changes to master
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the pattern:

on:
  push:
    branches:
      - master

means "run on all changes to master"

on:
  push:
    branches:
      - master

Means "run only when files in arrow/** arrow-flight/** or .github/** change"

configuration-path: .github/workflows/dev_pr/labeler.yml
sync-labels: true

#- name: Checks if PR needs rebase
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

driveby cleanup

@codecov-commenter
Copy link

Codecov Report

Merging #2213 (340a7be) into master (bc493d9) will increase coverage by 0.00%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #2213   +/-   ##
=======================================
  Coverage   82.56%   82.57%           
=======================================
  Files         239      239           
  Lines       62269    62269           
=======================================
+ Hits        51415    51417    +2     
+ Misses      10854    10852    -2     
Impacted Files Coverage Δ
parquet/src/encodings/encoding.rs 93.62% <0.00%> (+0.19%) ⬆️
...rquet/src/arrow/record_reader/definition_levels.rs 89.02% <0.00%> (+0.42%) ⬆️

Help us with your feedback. Take ten seconds to tell us how you rate us.

@alamb alamb marked this pull request as ready for review July 28, 2022 17:40
@alamb alamb changed the title Deliberately triggering CI workflows based on what files were changed Deliberately trigger CI workflows based on what files were changed Jul 28, 2022
@alamb
Copy link
Contributor Author

alamb commented Jul 28, 2022

🚀

@alamb alamb merged commit 8139f7b into apache:master Jul 28, 2022
@alamb alamb deleted the alamb/ci_trigger branch July 28, 2022 18:56
@ursabot
Copy link

ursabot commented Jul 28, 2022

Benchmark runs are scheduled for baseline = bc493d9 and contender = 8139f7b. 8139f7b is a master commit associated with this PR. Results will be available as each benchmark for each run completes.
Conbench compare runs links:
[Skipped ⚠️ Benchmarking of arrow-rs-commits is not supported on ec2-t3-xlarge-us-east-2] ec2-t3-xlarge-us-east-2
[Skipped ⚠️ Benchmarking of arrow-rs-commits is not supported on test-mac-arm] test-mac-arm
[Skipped ⚠️ Benchmarking of arrow-rs-commits is not supported on ursa-i9-9960x] ursa-i9-9960x
[Skipped ⚠️ Benchmarking of arrow-rs-commits is not supported on ursa-thinkcentre-m75q] ursa-thinkcentre-m75q
Buildkite builds:
Supported benchmarks:
ec2-t3-xlarge-us-east-2: Supported benchmark langs: Python, R. Runs only benchmarks with cloud = True
test-mac-arm: Supported benchmark langs: C++, Python, R
ursa-i9-9960x: Supported benchmark langs: Python, R, JavaScript
ursa-thinkcentre-m75q: Supported benchmark langs: C++, Java

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

development-process Related to development process of arrow-rs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Improve Arrow CI

4 participants