qa: fairly split integration tests using hints#18556
qa: fairly split integration tests using hints#18556yaauie wants to merge 3 commits intoelastic:mainfrom
Conversation
🤖 GitHub commentsJust comment with:
|
|
This pull request does not have a backport label. Could you fix it @yaauie? 🙏
|
💛 Build succeeded, but was flaky
Failed CI Steps
History
|
|
Love this idea. From https://buildkite.com/elastic/logstash-pull-request-pipeline/builds/4064#019bb399-033e-4505-82b0-f5c68cfe5d77 it looks like the estimate/actual match relative to themselves but the actual observed values are a bit off. not sure if this is just difference between running on a laptop vs CI (or maybe even variance in CI runners). Not sure if its worth it, but theoretically we could probably have rspec write the data to files and then export those files as build artifacts to track over time. That being said, the relative times probably mattern more than absolute so that might not be worth it.
|
Likely. I recorded them all in 5 runs on my laptop (with
I agree, but avoided expanding the scope. This would be a good follow-up though. |


Release notes
[rn:skip]
What does this PR do?
Refactors test-spliting code to improve the fairness of test partitions using hints
Why is it important/What is the impact to the user?
No user impact.
Because CI time-to-result is delayed until the slowest split of integration tests completes, we will have net improvement by ensuring that the tests are split more evenly with regard to each file's execution time.
Checklist
[ ] I have made corresponding changes to the documentation[ ] I have made corresponding change to the default configuration files (and/or docker env variables)How to test this PR locally
ci/partition-files.lib.sh testto run permutation validation on the file partitioner.