You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
chore(ci): use get_package_shards.py in import-profiler for dynamic sharding (#18079)
### Summary
Updates the `import-profiler` workflow to use `ci/get_package_shards.py`
for dynamic sharding matrix generation, bringing it in line with the
sharding pattern used in `lint.yml` and `unittest.yml`.
### Changes
* **`initialize` Job**: Added an initialization job running
`ci/get_package_shards.py` with `MAX_SHARDS: 8` to dynamically calculate
shard distribution based on modified packages.
* **Dynamic Shards**: Replaced static 8-shard matrix (`[0..7]`) with
dynamic shard matrix evaluation. If few or no packages changed, only the
necessary number of shards are spawned instead of always spinning up 8
runners.
* **Code Cleanliness**: Removed manual git diff parsing and modulo
arithmetic from the workflow step, passing `PACKAGE_LIST` directly to
`ci/run_conditional_tests.sh`.
* **Workflow Status Check**: Updated `all-import-profiles` to depend on
`[initialize, import-profile]` and verify both job outcomes.
0 commit comments