Skip to content

feat(pipeline): balanced splits - #7273

Draft
lemeurherve wants to merge 1 commit into
jenkinsci:masterfrom
lemeurherve:balanced-splits
Draft

feat(pipeline): balanced splits#7273
lemeurherve wants to merge 1 commit into
jenkinsci:masterfrom
lemeurherve:balanced-splits

Conversation

@lemeurherve

@lemeurherve lemeurherve commented Aug 12, 2026

Copy link
Copy Markdown
Member

This change implements balanced splits using splitTests from parallel executor plugin extracting splits from junit records of the previous build, to efficiently pack all combinations of repositories and their plugin(s) to get similar pct tests durations across all splits.

In case we can't use splitTests results (first build, or tests not executed previously ex: weekly-test label then full-test one), it extracts splits from stored bom reports (#7297).

For new repositories that were not in previous junit records or stored bom reports, it will use the previous method from #7256 to distribute them in additional fixed splits.

For the beginning stored bom reports can be updated manually, a future improvement could be to open a pull request on reports when running from master. (Out of scope for the implementation of balanced splits)

With this change, I observed in my builds that run pct stage take about 35~45mins, versus currently 1h~1h10mins with fixed splits.

Ref:

Testing done

Submitter checklist

  • Make sure you are opening from a topic/feature/bugfix branch (right side) and not your main branch!
  • Ensure that the pull request title represents the desired changelog entry
  • Please describe what you did
  • Link to relevant issues in GitHub or Jira
  • Link to relevant pull requests, esp. upstream and downstream changes
  • Ensure you have provided tests that demonstrate the feature works or the issue is fixed

@lemeurherve lemeurherve added enhancement New feature or request internal work-in-progress full-test Test all LTS lines in this PR and do not halt upon first error. labels Aug 12, 2026
@lemeurherve
lemeurherve force-pushed the balanced-splits branch 6 times, most recently from a50a151 to dd90d24 Compare August 14, 2026 08:24
@lemeurherve lemeurherve added weekly-test Test only the Weekly line in this PR and removed full-test Test all LTS lines in this PR and do not halt upon first error. labels Aug 14, 2026
@lemeurherve
lemeurherve force-pushed the balanced-splits branch 2 times, most recently from 86b5f2e to ee34d09 Compare August 14, 2026 12:35
@lemeurherve lemeurherve mentioned this pull request Aug 14, 2026
17 tasks
@lemeurherve
lemeurherve force-pushed the balanced-splits branch 13 times, most recently from 89df095 to 47ea4ea Compare August 15, 2026 20:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request internal weekly-test Test only the Weekly line in this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant