@@ -122,87 +122,18 @@ permissions:
122122
123123jobs :
124124 compute-matrix :
125- runs-on : ubuntu-latest
126- env :
127- BUILD_TYPE : ${{ inputs.build_type }}
128- MATRIX_TYPE : ${{ inputs.matrix_type }}
129- outputs :
130- MATRIX : ${{ steps.compute-matrix.outputs.MATRIX }}
131- steps :
132- - name : Validate Inputs
133- run : |
134- if [[ "$BUILD_TYPE" != "branch" ]] && [[ "$BUILD_TYPE" != "nightly" ]] && [[ "$BUILD_TYPE" != "pull-request" ]]; then
135- echo "Invalid build_type! Must be one of 'branch', 'nightly', or 'pull-request'."
136- exit 1
137- fi
138- if [[ "$MATRIX_TYPE" != "auto" ]] && [[ "$MATRIX_TYPE" != "nightly" ]] && [[ "$MATRIX_TYPE" != "pull-request" ]]; then
139- echo "Invalid matrix_type! Must be one of 'auto', 'nightly', or 'pull-request'."
140- exit 1
141- fi
142- - name : Compute Python Test Matrix
143- id : compute-matrix
144- env :
145- MATRIX_FILTER : ${{ inputs.matrix_filter }}
146- run : |
147- set -eo pipefail
148-
149- # please keep the matrices sorted in ascending order by the following:
150- #
151- # [ARCH, PY_VER, CUDA_VER, LINUX_VER, GPU, DRIVER, DEPENDENCIES]
152- #
153- export MATRICES="
154- pull-request:
155- # amd64
156- - { ARCH: 'amd64', PY_VER: '3.11', CUDA_VER: '12.2.2', LINUX_VER: 'rockylinux8', GPU: 'l4', DRIVER: 'earliest', DEPENDENCIES: 'oldest' }
157- - { ARCH: 'amd64', PY_VER: '3.12', CUDA_VER: '12.2.2', LINUX_VER: 'ubuntu22.04', GPU: 'a100', DRIVER: 'latest', DEPENDENCIES: 'latest' }
158- - { ARCH: 'amd64', PY_VER: '3.12', CUDA_VER: '13.0.2', LINUX_VER: 'ubuntu24.04', GPU: 'l4', DRIVER: 'latest', DEPENDENCIES: 'latest' }
159- - { ARCH: 'amd64', PY_VER: '3.13', CUDA_VER: '13.1.1', LINUX_VER: 'ubuntu24.04', GPU: 'rtxpro6000', DRIVER: 'latest', DEPENDENCIES: 'latest' }
160- - { ARCH: 'amd64', PY_VER: '3.14', CUDA_VER: '12.9.1', LINUX_VER: 'ubuntu22.04', GPU: 'h100', DRIVER: 'latest', DEPENDENCIES: 'latest' }
161- - { ARCH: 'amd64', PY_VER: '3.14', CUDA_VER: '13.1.1', LINUX_VER: 'ubuntu24.04', GPU: 'h100', DRIVER: 'latest', DEPENDENCIES: 'latest' }
162- # arm64
163- - { ARCH: 'arm64', PY_VER: '3.12', CUDA_VER: '13.0.2', LINUX_VER: 'ubuntu22.04', GPU: 'l4', DRIVER: 'latest', DEPENDENCIES: 'latest' }
164- - { ARCH: 'arm64', PY_VER: '3.14', CUDA_VER: '13.1.1', LINUX_VER: 'ubuntu24.04', GPU: 'l4', DRIVER: 'latest', DEPENDENCIES: 'latest' }
165- nightly:
166- # amd64
167- - { ARCH: 'amd64', PY_VER: '3.11', CUDA_VER: '12.2.2', LINUX_VER: 'rockylinux8', GPU: 'l4', DRIVER: 'earliest', DEPENDENCIES: 'oldest' }
168- - { ARCH: 'amd64', PY_VER: '3.11', CUDA_VER: '12.9.1', LINUX_VER: 'ubuntu22.04', GPU: 'l4', DRIVER: 'latest', DEPENDENCIES: 'latest' }
169- - { ARCH: 'amd64', PY_VER: '3.12', CUDA_VER: '13.0.2', LINUX_VER: 'rockylinux8', GPU: 'rtxpro6000', DRIVER: 'latest', DEPENDENCIES: 'latest' }
170- - { ARCH: 'amd64', PY_VER: '3.13', CUDA_VER: '12.2.2', LINUX_VER: 'rockylinux8', GPU: 'v100', DRIVER: 'earliest', DEPENDENCIES: 'latest' }
171- - { ARCH: 'amd64', PY_VER: '3.13', CUDA_VER: '12.9.1', LINUX_VER: 'ubuntu24.04', GPU: 'h100', DRIVER: 'latest', DEPENDENCIES: 'latest' }
172- - { ARCH: 'amd64', PY_VER: '3.13', CUDA_VER: '13.1.1', LINUX_VER: 'ubuntu24.04', GPU: 'h100', DRIVER: 'latest', DEPENDENCIES: 'latest' }
173- - { ARCH: 'amd64', PY_VER: '3.14', CUDA_VER: '13.1.1', LINUX_VER: 'ubuntu24.04', GPU: 'rtxpro6000', DRIVER: 'latest', DEPENDENCIES: 'latest' }
174- # arm64
175- - { ARCH: 'arm64', PY_VER: '3.11', CUDA_VER: '12.2.2', LINUX_VER: 'ubuntu22.04', GPU: 'l4', DRIVER: 'latest', DEPENDENCIES: 'oldest' }
176- - { ARCH: 'arm64', PY_VER: '3.12', CUDA_VER: '12.9.1', LINUX_VER: 'ubuntu22.04', GPU: 'l4', DRIVER: 'latest', DEPENDENCIES: 'latest' }
177- - { ARCH: 'arm64', PY_VER: '3.12', CUDA_VER: '13.0.2', LINUX_VER: 'rockylinux8', GPU: 'a100', DRIVER: 'latest', DEPENDENCIES: 'latest' }
178- - { ARCH: 'arm64', PY_VER: '3.14', CUDA_VER: '13.1.1', LINUX_VER: 'rockylinux8', GPU: 'a100', DRIVER: 'latest', DEPENDENCIES: 'latest' }
179- "
180-
181- # only overwrite MATRIX_TYPE if it was set to 'auto'
182- if [[ "${MATRIX_TYPE}" == "auto" ]]; then
183- if [[ "${BUILD_TYPE}" == "branch" ]]; then
184- # Use the nightly matrix for branch tests
185- MATRIX_TYPE="nightly"
186- else
187- MATRIX_TYPE="${BUILD_TYPE}"
188- fi
189- fi
190- export MATRIX_TYPE
191- TEST_MATRIX=$(yq -n 'env(MATRICES) | .[strenv(MATRIX_TYPE)]')
192- export TEST_MATRIX
193-
194- MATRIX="$(
195- yq -n -o json 'env(TEST_MATRIX)' | \
196- jq -c "${MATRIX_FILTER} | if (. | length) > 0 then {include: .} else \"Error: Empty matrix\n\" | halt_error(1) end"
197- )"
198-
199- echo "MATRIX=${MATRIX}" | tee --append "${GITHUB_OUTPUT}"
125+ uses : ./.github/workflows/compute-matrix.yaml
126+ with :
127+ build_type : ${{ inputs.build_type }}
128+ matrix_name : conda-python-tests
129+ matrix_type : ${{ inputs.matrix_type }}
130+ matrix_filter : ${{ inputs.matrix_filter }}
200131 tests :
201132 name : ${{ matrix.CUDA_VER }}, ${{ matrix.PY_VER }}, ${{ matrix.ARCH }}, ${{ matrix.LINUX_VER }}, ${{ matrix.GPU }}, ${{ matrix.DRIVER }}-driver, ${{ matrix.DEPENDENCIES }}-deps
202133 needs : compute-matrix
203134 strategy :
204135 fail-fast : false
205- matrix : ${{ fromJSON(needs.compute-matrix.outputs.MATRIX ) }}
136+ matrix : ${{ fromJSON(needs.compute-matrix.outputs.matrix ) }}
206137 runs-on : " linux-${{ matrix.ARCH }}-gpu-${{ matrix.GPU }}-${{ matrix.DRIVER }}-1"
207138 env :
208139 RAPIDS_ARTIFACTS_DIR : ${{ github.workspace }}/artifacts
0 commit comments