diff options
| author | Gangzheng Tong <tonggangzheng@gmail.com> | 2025-09-07 10:07:24 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-09-07 17:07:24 +0000 |
| commit | c0d7405d831faa6208b27fe56bf66fb0b138dcc5 (patch) | |
| tree | 01834ad9425079b801b3f6e20dd005cd067d9ecb /.github/workflows/ci.yml | |
| parent | bc6b82666fa4deda932c36cea93ee2059e0992b2 (diff) | |
Enhances CI reliability and debug logging (#8393)
1. Adds retry logic - Implements 3-attempt retry mechanism for
intermittent test failures
2. Reduces parallelism for Linux - Changes server counts back to 1 for
more stable execution, given the test is short in Linux for now
3. Adds detailed error logging - Enhanced diagnostic information for
test parsing failures
4. Add Python 3.10 setup for slangpy tests for github runners
5. Removes submodule checkout for slang and slasngpy tests
6. Adds check-ci job - Implements consolidated CI status for simplified
branch protection rule
---------
Co-authored-by: slangbot <ellieh+slangbot@nvidia.com>
Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
Diffstat (limited to '.github/workflows/ci.yml')
| -rw-r--r-- | .github/workflows/ci.yml | 40 |
1 files changed, 38 insertions, 2 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cbf5fe77e..f155cc6d9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -135,7 +135,7 @@ jobs: config: debug runs-on: '["ubuntu-22.04"]' test-category: smoke - server-count: 2 + server-count: 1 test-linux-release-gcc-x86_64: needs: [filter, build-linux-release-gcc-x86_64] @@ -148,7 +148,7 @@ jobs: config: release runs-on: '["ubuntu-22.04"]' test-category: full - server-count: 4 + server-count: 1 # macOS tests test-macos-debug-clang-aarch64: @@ -204,3 +204,39 @@ jobs: runs-on: '["Windows", "self-hosted", "GCP-T4"]' test-category: full full-gpu-tests: true + + check-ci: + needs: + [ + test-windows-release-cl-x86_64-gpu, + test-windows-debug-cl-x86_64-gpu, + test-macos-release-clang-aarch64, + test-macos-debug-clang-aarch64, + test-linux-release-gcc-x86_64, + test-linux-debug-gcc-x86_64, + ] + runs-on: ubuntu-latest + if: always() # Always run, even if dependencies fail + steps: + - name: Check CI Results + run: | + echo "=== CI Results Summary ===" + echo "Windows Release GPU: ${{ needs.test-windows-release-cl-x86_64-gpu.result }}" + echo "Windows Debug GPU: ${{ needs.test-windows-debug-cl-x86_64-gpu.result }}" + echo "macOS Release ARM64: ${{ needs.test-macos-release-clang-aarch64.result }}" + echo "macOS Debug ARM64: ${{ needs.test-macos-debug-clang-aarch64.result }}" + echo "Linux Release x64: ${{ needs.test-linux-release-gcc-x86_64.result }}" + echo "Linux Debug x64: ${{ needs.test-linux-debug-gcc-x86_64.result }}" + + # Check if all required jobs succeeded + if [[ "${{ needs.test-windows-release-cl-x86_64-gpu.result }}" != "success" ]] || \ + [[ "${{ needs.test-windows-debug-cl-x86_64-gpu.result }}" != "success" ]] || \ + [[ "${{ needs.test-macos-release-clang-aarch64.result }}" != "success" ]] || \ + [[ "${{ needs.test-macos-debug-clang-aarch64.result }}" != "success" ]] || \ + [[ "${{ needs.test-linux-release-gcc-x86_64.result }}" != "success" ]] || \ + [[ "${{ needs.test-linux-debug-gcc-x86_64.result }}" != "success" ]]; then + echo "❌ One or more CI jobs failed or were cancelled" + exit 1 + fi + + echo "✅ All CI jobs passed successfully!" |
