From 565a11c6918c31ab8a6abf37698fc88f5be68115 Mon Sep 17 00:00:00 2001 From: jnasbyupgrade Date: Mon, 10 Aug 2026 12:37:19 -0500 Subject: [PATCH] CI: gate the test job on make verify-results, not make test pgxntool/base.mk marks installcheck .IGNORE so a pg_regress regression never makes `make test` exit non-zero -- it only prints the diff. The test job's "Test on PostgreSQL" step ran `make test`, so CI reported green even when every regression test failed. `make verify-results` runs the same TEST_DEPS chain but then actually inspects the pgTAP results and exits non-zero on failure; PGXNTOOL_ENABLE_VERIFY_RESULTS defaults to yes and PGXNTOOL_VERIFY_RESULTS_MODE to pgtap already, matching this suite's pgTAP-based tests, so no Makefile change is needed. This mirrors the pattern cat_tools and pg_count_nulls already use for the same reason. Co-Authored-By: Claude --- .github/workflows/ci.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ae55013..f1fe559 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -112,7 +112,14 @@ jobs: - name: Check out the repo uses: actions/checkout@v4 - name: Test on PostgreSQL ${{ matrix.pg }} - run: make test + # `make test` alone never fails this step: pgxntool/base.mk (as + # vendored here, 2.2.0) marks its underlying installcheck .IGNORE, + # so a regression exits 0 and only prints the diff. verify-results is + # the real gate -- it runs the same TEST_DEPS chain, then actually + # inspects the pgTAP results (PGXNTOOL_ENABLE_VERIFY_RESULTS defaults + # to yes, PGXNTOOL_VERIFY_RESULTS_MODE to pgtap, matching this + # suite's pgTAP-based tests) and exits non-zero on failure. + run: make verify-results # A single stable check name for use as a required status check in branch # protection rules. Matrix jobs produce check names like "🐘 PostgreSQL 14"