From b6ad16fad94c5cbda22b4eddc7920431dfa8fe13 Mon Sep 17 00:00:00 2001 From: Jinfeng Date: Mon, 29 Jun 2026 23:40:25 +0000 Subject: [PATCH 1/2] move testing release tools to nightly --- .github/workflows/ci-nightly.yml | 25 ++++++++++++++++++++++--- .github/workflows/release.yml | 5 ----- pytest.ini | 1 - 3 files changed, 22 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci-nightly.yml b/.github/workflows/ci-nightly.yml index f0a7649a2b..f8b32614ed 100644 --- a/.github/workflows/ci-nightly.yml +++ b/.github/workflows/ci-nightly.yml @@ -3,8 +3,9 @@ # SPDX-License-Identifier: Apache-2.0 # Nightly CI pipeline that tests optional dependencies (PyTorch, numba-cuda) -# against the latest cuda-python wheels built on main, and runs the standard -# test suite on runners reserved for nightly-only use (e.g. arm64 l4×2). +# against the latest cuda-python wheels built on main, runs the standard +# test suite on runners reserved for nightly-only use (e.g. arm64 l4×2), and +# exercises release-time CI helper scripts so they do not silently rot between releases. # # This workflow does NOT build wheels — it downloads them from the latest # successful CI run on main and runs integration/standard tests. @@ -31,6 +32,21 @@ on: default: '' jobs: + test-ci-tools-for-release: + name: "Nightly: CI tools for release" + if: ${{ github.repository_owner == 'nvidia' }} + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 + with: + fetch-depth: 1 + + - name: Run CI tools unit tests + run: | + python -m pip install pytest + python -m pytest -v ci/tools/tests + find-wheels: runs-on: ubuntu-latest outputs: @@ -219,6 +235,7 @@ jobs: if: always() runs-on: ubuntu-latest needs: + - test-ci-tools-for-release - find-wheels - test-pytorch-linux - test-pytorch-linux-aarch64 @@ -235,7 +252,9 @@ jobs: # See ci.yml for the full rationale on why we must use always() # and explicitly check each result rather than relying on the # default behaviour. - if ${{ needs.find-wheels.result != 'success' }}; then + if ${{ needs.test-ci-tools-for-release.result == 'cancelled' || + needs.test-ci-tools-for-release.result == 'failure' || + needs.find-wheels.result != 'success' }}; then exit 1 fi if ${{ needs.test-pytorch-linux.result == 'cancelled' || diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 80fa9623c1..37322974a0 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -164,11 +164,6 @@ jobs: with: python-version: "3.12" - # - name: Self-test release-notes checker - # run: | - # pip install pytest - # pytest ci/tools/tests - - name: Check versioned release notes exist run: | python ci/tools/check_release_notes.py \ diff --git a/pytest.ini b/pytest.ini index 76e5a2977d..148b722aca 100644 --- a/pytest.ini +++ b/pytest.ini @@ -12,7 +12,6 @@ testpaths = cuda_bindings/tests cuda_core/tests tests/integration - ci/tools/tests markers = pathfinder: tests for cuda_pathfinder From 0bb757e8b07fd08c7ffbac46ea000ed57c10a579 Mon Sep 17 00:00:00 2001 From: Jinfeng Date: Wed, 1 Jul 2026 01:15:53 +0000 Subject: [PATCH 2/2] ci: skip root conftest when running ci/tools/tests in nightly --- .github/workflows/ci-nightly.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci-nightly.yml b/.github/workflows/ci-nightly.yml index f8b32614ed..c6ecb9fdff 100644 --- a/.github/workflows/ci-nightly.yml +++ b/.github/workflows/ci-nightly.yml @@ -45,7 +45,8 @@ jobs: - name: Run CI tools unit tests run: | python -m pip install pytest - python -m pytest -v ci/tools/tests + # Standalone CI tool tests; skip repo-root conftest.py (imports cuda.pathfinder). + python -m pytest -v --noconftest ci/tools/tests find-wheels: runs-on: ubuntu-latest