diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cbd5e8fc2f..918f4209d3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -392,7 +392,7 @@ jobs: python3 script/test_build_components.py -e compile -c ${{ matrix.file }} test-build-components-splitter: - name: Split components for intelligent grouping (15 per batch) + name: Split components for intelligent grouping (20 per batch) runs-on: ubuntu-24.04 needs: - common @@ -417,7 +417,7 @@ jobs: components='${{ needs.determine-jobs.outputs.changed-components }}' echo "Splitting components intelligently..." - output=$(python3 script/split_components_for_ci.py --components "$components" --batch-size 15 --output github) + output=$(python3 script/split_components_for_ci.py --components "$components" --batch-size 20 --output github) echo "$output" >> $GITHUB_OUTPUT @@ -435,6 +435,14 @@ jobs: matrix: components: ${{ fromJson(needs.test-build-components-splitter.outputs.matrix) }} steps: + - name: Maximize build space + uses: easimon/maximize-build-space@c28619d8999a147d5e09c1199f84ff6af6ad5794 + with: + remove-android: 'true' + remove-dotnet: 'true' + remove-haskell: 'true' + remove-codeql: 'true' + - name: List components run: echo ${{ matrix.components }} diff --git a/script/split_components_for_ci.py b/script/split_components_for_ci.py index 019d482b6e..8465683b4f 100755 --- a/script/split_components_for_ci.py +++ b/script/split_components_for_ci.py @@ -49,7 +49,7 @@ def has_test_files(component_name: str, tests_dir: Path) -> bool: def create_intelligent_batches( components: list[str], tests_dir: Path, - batch_size: int = 15, + batch_size: int = 20, ) -> list[list[str]]: """Create batches optimized for component grouping. @@ -161,8 +161,8 @@ def main() -> int: "--batch-size", "-b", type=int, - default=15, - help="Target batch size (default: 15)", + default=20, + help="Target batch size (default: 20)", ) parser.add_argument( "--tests-dir",