Skip to content

Commit b6d9e02

Browse files
committed
ci: split build and test into vertical pipeline structure
1 parent 0bcce3f commit b6d9e02

File tree

1 file changed

+61
-7
lines changed

1 file changed

+61
-7
lines changed

.github/workflows/ci.yml

Lines changed: 61 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,15 +32,45 @@ jobs:
3232
cuda_build_ver=$(jq -r .cuda.build.version ci/versions.json)
3333
echo "cuda_build_ver=$cuda_build_ver" >> $GITHUB_OUTPUT
3434
35-
build:
35+
build-linux-64:
3636
needs:
3737
- ci-vars
3838
strategy:
3939
fail-fast: false
4040
matrix:
4141
host-platform:
4242
- linux-64
43+
name: Build ${{ matrix.host-platform }}, CUDA ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
44+
if: ${{ github.repository_owner == 'nvidia' }}
45+
secrets: inherit
46+
uses: ./.github/workflows/build-wheel.yml
47+
with:
48+
host-platform: ${{ matrix.host-platform }}
49+
cuda-version: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
50+
51+
build-linux-aarch64:
52+
needs:
53+
- ci-vars
54+
strategy:
55+
fail-fast: false
56+
matrix:
57+
host-platform:
4358
- linux-aarch64
59+
name: Build ${{ matrix.host-platform }}, CUDA ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
60+
if: ${{ github.repository_owner == 'nvidia' }}
61+
secrets: inherit
62+
uses: ./.github/workflows/build-wheel.yml
63+
with:
64+
host-platform: ${{ matrix.host-platform }}
65+
cuda-version: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
66+
67+
build-windows:
68+
needs:
69+
- ci-vars
70+
strategy:
71+
fail-fast: false
72+
matrix:
73+
host-platform:
4474
- win-64
4575
name: Build ${{ matrix.host-platform }}, CUDA ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
4676
if: ${{ github.repository_owner == 'nvidia' }}
@@ -50,20 +80,39 @@ jobs:
5080
host-platform: ${{ matrix.host-platform }}
5181
cuda-version: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
5282

53-
test-linux:
83+
test-linux-64:
5484
strategy:
5585
fail-fast: false
5686
matrix:
5787
host-platform:
5888
- linux-64
89+
name: Test ${{ matrix.host-platform }}
90+
if: ${{ github.repository_owner == 'nvidia' }}
91+
permissions:
92+
contents: read # This is required for actions/checkout
93+
needs:
94+
- ci-vars
95+
- build-linux-64
96+
secrets: inherit
97+
uses: ./.github/workflows/test-wheel-linux.yml
98+
with:
99+
build-type: pull-request
100+
host-platform: ${{ matrix.host-platform }}
101+
build-ctk-ver: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
102+
103+
test-linux-aarch64:
104+
strategy:
105+
fail-fast: false
106+
matrix:
107+
host-platform:
59108
- linux-aarch64
60109
name: Test ${{ matrix.host-platform }}
61110
if: ${{ github.repository_owner == 'nvidia' }}
62111
permissions:
63112
contents: read # This is required for actions/checkout
64113
needs:
65114
- ci-vars
66-
- build
115+
- build-linux-aarch64
67116
secrets: inherit
68117
uses: ./.github/workflows/test-wheel-linux.yml
69118
with:
@@ -83,7 +132,7 @@ jobs:
83132
contents: read # This is required for actions/checkout
84133
needs:
85134
- ci-vars
86-
- build
135+
- build-windows
87136
secrets: inherit
88137
uses: ./.github/workflows/test-wheel-windows.yml
89138
with:
@@ -101,7 +150,9 @@ jobs:
101150
pull-requests: write
102151
needs:
103152
- ci-vars
104-
- build
153+
- build-linux-64
154+
- build-linux-aarch64
155+
- build-windows
105156
secrets: inherit
106157
uses: ./.github/workflows/build-docs.yml
107158
with:
@@ -112,8 +163,11 @@ jobs:
112163
permissions:
113164
checks: read
114165
needs:
115-
- build
116-
- test-linux
166+
- build-linux-64
167+
- test-linux-64
168+
- build-linux-aarch64
169+
- test-linux-aarch64
170+
- build-windows
117171
- test-windows
118172
- doc
119173
secrets: inherit

0 commit comments

Comments
 (0)