Azure / Azure/azure-sdk-tools

Package batch balancing by weight

Open
#10,029 0 comments 0 reactions 0 assignees View on GitHub
Central-EngSys needs-triage
Dominant language
C#
Stars
135
Forks
260
Avg merge
3d 1h
Merged PRs (30d)
143

Description

Currently distributing packages in to matrix legs or build/test batches (azure-sdk-for-net) legs are balanced by package count. This leads to a balance issue in leg time because of size, complexity or test count differences between the packages.

If we considered package "weight" when balancing legs, we could support balancing of leg work by adjusting the weight of each package.

By default, setting the weight of each package to 1 would result in legs balanced by package count. Allowing the weight to be programmatically set by the language repo per package would allow for balance strategies like line count, test count, file count, etc.

Contributor guide

Open the contributing guide

Research direction

No file or test is named. Start by locating the code that distributes packages into matrix legs or build/test batches, then trace how package counts are calculated. Done means legs can be balanced by configurable package weight, with weight 1 preserving count-based behavior and language repositories able to provide other weights.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
build-system, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.