Skip to content

Commit 32b0f12

Browse files
cpcloudleofang
andauthored
ci: split build and test into vertical pipeline structure (#1016)
* ci: split build and test into vertical pipeline structure * Apply suggestions from code review Co-authored-by: Leo Fang <leof@nvidia.com> --------- Co-authored-by: Leo Fang <leof@nvidia.com>
1 parent bca9d77 commit 32b0f12

File tree

1 file changed

+64
-7
lines changed

1 file changed

+64
-7
lines changed

.github/workflows/ci.yml

Lines changed: 64 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,15 +32,48 @@ 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+
# WARNING: make sure all of the build jobs are in sync
36+
build-linux-64:
3637
needs:
3738
- ci-vars
3839
strategy:
3940
fail-fast: false
4041
matrix:
4142
host-platform:
4243
- linux-64
44+
name: Build ${{ matrix.host-platform }}, CUDA ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
45+
if: ${{ github.repository_owner == 'nvidia' }}
46+
secrets: inherit
47+
uses: ./.github/workflows/build-wheel.yml
48+
with:
49+
host-platform: ${{ matrix.host-platform }}
50+
cuda-version: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
51+
52+
# WARNING: make sure all of the build jobs are in sync
53+
build-linux-aarch64:
54+
needs:
55+
- ci-vars
56+
strategy:
57+
fail-fast: false
58+
matrix:
59+
host-platform:
4360
- linux-aarch64
61+
name: Build ${{ matrix.host-platform }}, CUDA ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
62+
if: ${{ github.repository_owner == 'nvidia' }}
63+
secrets: inherit
64+
uses: ./.github/workflows/build-wheel.yml
65+
with:
66+
host-platform: ${{ matrix.host-platform }}
67+
cuda-version: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
68+
69+
# WARNING: make sure all of the build jobs are in sync
70+
build-windows:
71+
needs:
72+
- ci-vars
73+
strategy:
74+
fail-fast: false
75+
matrix:
76+
host-platform:
4477
- win-64
4578
name: Build ${{ matrix.host-platform }}, CUDA ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
4679
if: ${{ github.repository_owner == 'nvidia' }}
@@ -50,20 +83,41 @@ jobs:
5083
host-platform: ${{ matrix.host-platform }}
5184
cuda-version: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
5285

53-
test-linux:
86+
# WARNING: make sure both Linux test jobs are in sync
87+
test-linux-64:
5488
strategy:
5589
fail-fast: false
5690
matrix:
5791
host-platform:
5892
- linux-64
93+
name: Test ${{ matrix.host-platform }}
94+
if: ${{ github.repository_owner == 'nvidia' }}
95+
permissions:
96+
contents: read # This is required for actions/checkout
97+
needs:
98+
- ci-vars
99+
- build-linux-64
100+
secrets: inherit
101+
uses: ./.github/workflows/test-wheel-linux.yml
102+
with:
103+
build-type: pull-request
104+
host-platform: ${{ matrix.host-platform }}
105+
build-ctk-ver: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }}
106+
107+
# WARNING: make sure both Linux test jobs are in sync
108+
test-linux-aarch64:
109+
strategy:
110+
fail-fast: false
111+
matrix:
112+
host-platform:
59113
- linux-aarch64
60114
name: Test ${{ matrix.host-platform }}
61115
if: ${{ github.repository_owner == 'nvidia' }}
62116
permissions:
63117
contents: read # This is required for actions/checkout
64118
needs:
65119
- ci-vars
66-
- build
120+
- build-linux-aarch64
67121
secrets: inherit
68122
uses: ./.github/workflows/test-wheel-linux.yml
69123
with:
@@ -83,7 +137,7 @@ jobs:
83137
contents: read # This is required for actions/checkout
84138
needs:
85139
- ci-vars
86-
- build
140+
- build-windows
87141
secrets: inherit
88142
uses: ./.github/workflows/test-wheel-windows.yml
89143
with:
@@ -101,7 +155,7 @@ jobs:
101155
pull-requests: write
102156
needs:
103157
- ci-vars
104-
- build
158+
- build-linux-64
105159
secrets: inherit
106160
uses: ./.github/workflows/build-docs.yml
107161
with:
@@ -112,8 +166,11 @@ jobs:
112166
permissions:
113167
checks: read
114168
needs:
115-
- build
116-
- test-linux
169+
- build-linux-64
170+
- test-linux-64
171+
- build-linux-aarch64
172+
- test-linux-aarch64
173+
- build-windows
117174
- test-windows
118175
- doc
119176
secrets: inherit

0 commit comments

Comments
 (0)