diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 823be159f49..1b2bb241ff3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,7 +32,8 @@ jobs: cuda_build_ver=$(jq -r .cuda.build.version ci/versions.json) echo "cuda_build_ver=$cuda_build_ver" >> $GITHUB_OUTPUT - build: + # WARNING: make sure all of the build jobs are in sync + build-linux-64: needs: - ci-vars strategy: @@ -40,7 +41,39 @@ jobs: matrix: host-platform: - linux-64 + name: Build ${{ matrix.host-platform }}, CUDA ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }} + if: ${{ github.repository_owner == 'nvidia' }} + secrets: inherit + uses: ./.github/workflows/build-wheel.yml + with: + host-platform: ${{ matrix.host-platform }} + cuda-version: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }} + + # WARNING: make sure all of the build jobs are in sync + build-linux-aarch64: + needs: + - ci-vars + strategy: + fail-fast: false + matrix: + host-platform: - linux-aarch64 + name: Build ${{ matrix.host-platform }}, CUDA ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }} + if: ${{ github.repository_owner == 'nvidia' }} + secrets: inherit + uses: ./.github/workflows/build-wheel.yml + with: + host-platform: ${{ matrix.host-platform }} + cuda-version: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }} + + # WARNING: make sure all of the build jobs are in sync + build-windows: + needs: + - ci-vars + strategy: + fail-fast: false + matrix: + host-platform: - win-64 name: Build ${{ matrix.host-platform }}, CUDA ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }} if: ${{ github.repository_owner == 'nvidia' }} @@ -50,12 +83,33 @@ jobs: host-platform: ${{ matrix.host-platform }} cuda-version: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }} - test-linux: + # WARNING: make sure both Linux test jobs are in sync + test-linux-64: strategy: fail-fast: false matrix: host-platform: - linux-64 + name: Test ${{ matrix.host-platform }} + if: ${{ github.repository_owner == 'nvidia' }} + permissions: + contents: read # This is required for actions/checkout + needs: + - ci-vars + - build-linux-64 + secrets: inherit + uses: ./.github/workflows/test-wheel-linux.yml + with: + build-type: pull-request + host-platform: ${{ matrix.host-platform }} + build-ctk-ver: ${{ needs.ci-vars.outputs.CUDA_BUILD_VER }} + + # WARNING: make sure both Linux test jobs are in sync + test-linux-aarch64: + strategy: + fail-fast: false + matrix: + host-platform: - linux-aarch64 name: Test ${{ matrix.host-platform }} if: ${{ github.repository_owner == 'nvidia' }} @@ -63,7 +117,7 @@ jobs: contents: read # This is required for actions/checkout needs: - ci-vars - - build + - build-linux-aarch64 secrets: inherit uses: ./.github/workflows/test-wheel-linux.yml with: @@ -83,7 +137,7 @@ jobs: contents: read # This is required for actions/checkout needs: - ci-vars - - build + - build-windows secrets: inherit uses: ./.github/workflows/test-wheel-windows.yml with: @@ -101,7 +155,7 @@ jobs: pull-requests: write needs: - ci-vars - - build + - build-linux-64 secrets: inherit uses: ./.github/workflows/build-docs.yml with: @@ -112,8 +166,11 @@ jobs: permissions: checks: read needs: - - build - - test-linux + - build-linux-64 + - test-linux-64 + - build-linux-aarch64 + - test-linux-aarch64 + - build-windows - test-windows - doc secrets: inherit