Skip to content

Commit 85f7f2a

Browse files
andyleisersoncwfitzgerald
authored andcommitted
[ci] Split the CTS into multiple jobs
1 parent a1ac882 commit 85f7f2a

File tree

1 file changed

+19
-5
lines changed

1 file changed

+19
-5
lines changed

.github/workflows/cts.yml

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,26 +31,39 @@ jobs:
3131
strategy:
3232
fail-fast: false
3333
matrix:
34+
suite: ["API Operation", "API Validation", "Other"]
35+
platform: ["Windows x86_64", "Mac aarch64", "Linux x86_64"]
3436
include:
37+
# When an `include` item matches existing matrix entries, the additional items are
38+
# added only to the matching entries. The two lines above define the matrix, and
39+
# the items below attach the rest of the configuration values that apply to suites
40+
# and platforms.
41+
- suite: API Operation
42+
filter: "^webgpu:api,operation,"
43+
- suite: API Validation
44+
filter: "^webgpu:api,validation,"
45+
- suite: Other
46+
filter: "!^webgpu:api,operation,|^webgpu:api,validation,"
47+
3548
# Windows
36-
- name: Windows x86_64
49+
- platform: Windows x86_64
3750
os: windows-2022
3851
target: x86_64-pc-windows-msvc
3952
backend: dx12
4053

4154
# Mac
42-
- name: Mac aarch64
55+
- platform: Mac aarch64
4356
os: macos-14
4457
target: x86_64-apple-darwin
4558
backend: metal
4659

4760
# Linux
48-
- name: Linux x86_64
61+
- platform: Linux x86_64
4962
os: ubuntu-24.04
5063
target: x86_64-unknown-linux-gnu
5164
backend: vulkan
5265

53-
name: CTS ${{ matrix.name }}
66+
name: ${{ matrix.suite }} ${{ matrix.platform }}
5467
runs-on: ${{ matrix.os }}
5568

5669
steps:
@@ -103,12 +116,13 @@ jobs:
103116
# Explicitly set the backend to avoid EGL messages in output,
104117
# because these tests check stdout.
105118
- name: Test cts_runner
119+
if: matrix.suite == 'other'
106120
shell: bash
107121
run: DENO_WEBGPU_BACKEND=${{ matrix.backend }} cargo --locked test -p cts_runner
108122

109123
- name: Run CTS
110124
shell: bash
111-
run: cargo --locked xtask cts --llvm-cov --backend ${{ matrix.backend }}
125+
run: cargo --locked xtask cts --llvm-cov --backend ${{ matrix.backend }} --filter '${{matrix.filter }}'
112126

113127
- name: Generate coverage report
114128
id: coverage

0 commit comments

Comments
 (0)