Optimize parallel jest using jest metadata
<!--IssueSummary start--> <details> <summary> Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards. </summary> - [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=207199) </details> <!--IssueSummary end--> In !25104, jest is parallelized by simply splitting the test files evenly across CI nodes. We could optimize this further by using jest's original `TestSequencer` which takes into account metadata from past tests to determine how tests are ordered. To do this, we need to: - [ ] cache and combine metadata from jest jobs - [ ] use `TestSequencer`'s sort in the custom sequencer `parallel_ci_sequencer.js` - [ ] ensure that **no test files** fall through the crack between ci nodes due to the allocation logic More context: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/25104#note_290010970
issue
Advertisement
Advertisement