On Tue, Oct 27, 2026 at 05:23:49PM -0400, Jeff King wrote:
On Tue, Oct 27, 2026 at 09:18:28AM +0100, Patrick Steinhardt wrote:
quoted
Due to the job being special it has a higher potential of failing even
though a local test run succeeds. But running these tests locally with
the same environment is somewhat painful, as the developer has to
manually set all of these environment variables.
OK. I've usually just cut-and-paste them, as my first step is figuring
out which is the culprit anyway. My biggest question was: what if the
culprit is a build flag, and indeed, we leave the one build flag here:
quoted
linux-feature-testbed)
export OPENSSL_SHA1_UNSAFE=YesPlease
- export GIT_TEST_SPLIT_INDEX=yes
- export GIT_TEST_FULL_IN_PACK_ARRAY=true
- export GIT_TEST_OE_SIZE=10
- export GIT_TEST_OE_DELTA_SIZE=5
- export GIT_TEST_COMMIT_GRAPH=1
- export GIT_TEST_COMMIT_GRAPH_CHANGED_PATHS=1
- export GIT_TEST_MULTI_PACK_INDEX=1
- export GIT_TEST_MULTI_PACK_INDEX_WRITE_INCREMENTAL=1
- export GIT_TEST_NO_WRITE_REV_INDEX=1
- export GIT_TEST_CHECKOUT_WORKERS=2
- export GIT_TEST_PACK_USE_BITMAP_BOUNDARY_TRAVERSAL=1
+ GIT_TEST_OPTS="$GIT_TEST_OPTS --feature-testbed"
which makes this feature only half-work (well, 11/12 if we want to be
pedantic).
IMHO this whole thing isn't really worth the complexity, but if we are
going to do it, should it be "make FEATURE_TESTBED=1", and then that
enables the right build knobs, and test-lib.sh respects that variable
coming from BUILD-OPTIONS rather than the command line?
I dunno. Until now I've never had the case myself where the issue is
because of the above build flag, test errors were only ever caused by
one of the GIT_TEST variables. So what I typically want is to toggle
between GIT_TEST- and non-GIT_TEST test runs, and ideally without having
to recompile everything. And more often than not I want to only do this
for a single test file, only.
So I'm not much of a fan of moving this into our BUILD-OPTIONS, as it
would kind of defeat my own use case for it. I'm thus inclined to either
leave this as-is, or drop the patch altogether. I don't terribly mind
either of those outcomes.
Patrick