ci: run expensive tests on push builds to integration branches

Derrick Stolee suggested [1] that expensive tests should be run at a regular cadence rather than on every PR iteration. Gate GIT_TEST_LONG on push builds to the integration branches (next, master, main, maint) so that the EXPENSIVE prereq is satisfied there but not during PR validation, where the extra minutes of wall-clock time do not justify themselves. [1] https://lore.kernel.org/git/e1e8837f-7374-4079-ba87-ab95dd156e33@gmail.com/ Helped-by: Derrick Stolee <derrickstolee@github.com> Assisted-by: Claude Opus 4.6 Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Johannes Schindelin committed May 8, 2026 at 08:16 UTC 7a094d68a27e321a99c8ab6b700909e503904bd9
1 file changed +9
ci/lib.sh
+9
@@ -314,6 +314,15 @@ export DEFAULT_TEST_TARGET=prove
314 export GIT_TEST_CLONE_2GB=true
315 export SKIP_DASHED_BUILT_INS=YesPlease
316
317 +# Enable expensive tests on push builds to integration branches, but
318 +# not on PR builds where the extra time is not justified for every
319 +# iteration.
320 +case "$GITHUB_EVENT_NAME,$CI_BRANCH" in
321 +push,*next*|push,*master*|push,*main*|push,*maint*)
322 + export GIT_TEST_LONG=YesPlease
323 + ;;
324 +esac
325 +
326 case "$distro" in
327 ubuntu-*)
328 # Python 2 is end of life, and Ubuntu 23.04 and newer don't actually