Skip to content

Commit 6e16452

Browse files
committed
Speed up with pytest-split
1 parent 0a817d4 commit 6e16452

5 files changed

Lines changed: 5194 additions & 6 deletions

File tree

‎.github/workflows/build.yml‎

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,10 @@ concurrency:
1111

1212
jobs:
1313
build:
14-
name: ${{ matrix.image }}
14+
name: ${{ matrix.image }}${{ matrix.split && format(' {0}', matrix.split) }}
1515
runs-on: ${{ matrix.os }}
16+
env:
17+
SPLIT_COUNT: 4
1618
strategy:
1719
fail-fast: false
1820
matrix:
@@ -34,11 +36,24 @@ jobs:
3436
- "fedora-44-amd64"
3537
- "gentoo"
3638
- "ubuntu-24.04-noble-amd64"
37-
- "ubuntu-24.04-noble-amd64-valgrind"
3839
- "ubuntu-26.04-resolute-amd64"
3940
# has a dependency on the test image
4041
- "manylinux_2_28-wheel-build"
4142
include:
43+
# The valgrind suite is slow, so split it across parallel jobs.
44+
# Keep the SPLIT_COUNT env var equal to the number of entries here.
45+
- image: "ubuntu-24.04-noble-amd64-valgrind"
46+
os: "ubuntu-latest"
47+
split: 1
48+
- image: "ubuntu-24.04-noble-amd64-valgrind"
49+
os: "ubuntu-latest"
50+
split: 2
51+
- image: "ubuntu-24.04-noble-amd64-valgrind"
52+
os: "ubuntu-latest"
53+
split: 3
54+
- image: "ubuntu-24.04-noble-amd64-valgrind"
55+
os: "ubuntu-latest"
56+
split: 4
4257
- image: "manylinux_2_28-wheel-build"
4358
test-image: "fedora-43-amd64"
4459
- image: "ubuntu-26.04-resolute-ppc64le"
@@ -101,6 +116,7 @@ jobs:
101116
make test BRANCH=main
102117
env:
103118
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
119+
SPLIT_INDEX: ${{ matrix.split }}
104120

105121
- name: Log image size
106122
run: |

0 commit comments

Comments
 (0)