Skip to content

CI: shard coverage across 4 jobs + combine - #1795

Open
jlnav wants to merge 2 commits into
fix/service-mode-rebasefrom
fix/coverage-sharding
Open

jlnav wants to merge 2 commits into
fix/service-mode-rebasefrom
fix/coverage-sharding

Conversation

@jlnav

@jlnav jlnav commented Oct 16, 2026

Copy link
Copy Markdown
Member

Split canonical coverage suite (-l -m -e --coverage) round-robin across 4 matrix shards using --shard INDEX/4 (existing external sharding). Shard 0 runs unit+regression slice, shards 1-3 regression-only to avoid duplicating unit runtime.

Each shard stages .cov*/.coverage* via find+cp --parents into cov_staging and uploads as coverage-data-N. New coverage-combine job downloads all shards, flat-copies into libensemble/tests, runs coverage combine + coverage xml, and uploads single coverage.xml to codecov. Cuts ~3-4x wall time; union is exact (105 standalone files round-robin, no gap/overlap).

Also mirrors timings per-shard for debugging.

@jlnav
jlnav added this pull request to stack #1796 October 16, 2026 16:26
@jlnav
jlnav force-pushed the fix/coverage-sharding branch from f4a3cfa to f6eebc5 Compare October 19, 2026 13:15
@jlnav
jlnav force-pushed the fix/coverage-sharding branch from 2f2f82e to ad6476e Compare October 19, 2026 14:38
jlnav added 2 commits October 20, 2026 10:39
Split canonical coverage suite (-l -m -e --coverage) round-robin
across 4 matrix shards using --shard INDEX/4 (existing external
sharding). Shard 0 runs unit+regression slice, shards 1-3
regression-only to avoid duplicating unit runtime.

Each shard stages .cov*/.coverage* via find+cp --parents into
cov_staging and uploads as coverage-data-N. New coverage-combine
job downloads all shards, flat-copies into libensemble/tests,
runs coverage combine + coverage xml, and uploads single
coverage.xml to codecov. Cuts ~3-4x wall time; union is exact
(105 standalone files round-robin, no gap/overlap).

Also mirrors timings per-shard for debugging.
@jlnav
jlnav force-pushed the fix/coverage-sharding branch from ad6476e to 50790c3 Compare October 20, 2026 15:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant