]> git.ipfire.org Git - thirdparty/git.git/commit
t/perf: do not run tests in user's $SHELL
authorJohannes Altmanninger <aclopte@gmail.com>
Sat, 25 Dec 2021 08:16:58 +0000 (09:16 +0100)
committerJunio C Hamano <gitster@pobox.com>
Sat, 25 Dec 2021 22:24:58 +0000 (14:24 -0800)
commit9ccab75608fb87d82ccec1ab71cc915d7f8dc5a0
tree5cc78f1e2c969d56bba4c454623ba74b16c3ba91
parente9d7761bb94f20acc98824275e317fa82436c25d
t/perf: do not run tests in user's $SHELL

The environment variable $SHELL is usually set to the user's
interactive shell. Our build and test scripts never use $SHELL because
there are no guarantees about its input language.  Instead, we use
/bin/sh which should be a POSIX shell.

For systems with a broken /bin/sh, we allow to override that path via
SHELL_PATH.  To run tests in yet another shell we allow to override
SHELL_PATH with TEST_SHELL_PATH.

Perf tests run in $SHELL via a wrapper defined in t/perf/perf-lib.sh,
so they break with e.g. SHELL=python.  Use TEST_SHELL_PATH like
in other tests.  TEST_SHELL_PATH is always defined because
t/perf/perf-lib.sh includes t/test-lib.sh, which includes
GIT-BUILD-OPTIONS.

Acked-by: Jeff King <peff@peff.net>
Signed-off-by: Johannes Altmanninger <aclopte@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/perf/perf-lib.sh