diff --git a/.github/workflows/rust-tests.yml b/.github/workflows/rust-tests.yml index 43221392..9fe9fa9d 100644 --- a/.github/workflows/rust-tests.yml +++ b/.github/workflows/rust-tests.yml @@ -107,3 +107,25 @@ jobs: ~/.cargo/bin/cargo-nextest nextest run \ --archive-file ../nextest-archive.tar.zst \ --partition count:${{ matrix.partition }}/2 + + tests-result-checker: + name: Check tests were successful + needs: [setup, all-rust-tests] + if: always() + runs-on: ubuntu-latest + steps: + - name: Validate test results + run: | + echo "node_changed: ${{ needs.setup.outputs.node_changed }}" + echo "matrix result: ${{ needs.all-rust-tests.result }}" + + if [ "${{ needs.setup.outputs.node_changed }}" == "true" ]; then + if [ "${{ needs.all-rust-tests.result }}" != "success" ]; then + echo "Rust tests failed or were cancelled" + exit 1 + else + echo "Rust tests passed" + fi + else + echo "No relevant changes — skipping rust tests" + fi