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
index 42a2b6a318..a671994bdf 100755 --- a/ci/lib.sh +++ b/ci/lib.sh @@ -314,6 +314,15 @@ export DEFAULT_TEST_TARGET=prove export GIT_TEST_CLONE_2GB=true export SKIP_DASHED_BUILT_INS=YesPlease +# Enable expensive tests on push builds to integration branches, but +# not on PR builds where the extra time is not justified for every +# iteration. +case "$GITHUB_EVENT_NAME,$CI_BRANCH" in +push,*next*|push,*master*|push,*main*|push,*maint*) + export GIT_TEST_LONG=YesPlease + ;; +esac + case "$distro" in ubuntu-*) # Python 2 is end of life, and Ubuntu 23.04 and newer don't actually