Sync with 'maint'
[git/debian.git] / ci / run-build-and-tests.sh
blob8ebff4259676e303b953385ba14cf17b78c1a4de
1 #!/bin/sh
3 # Build and test Git
6 . ${0%/*}/lib.sh
8 case "$CI_OS_NAME" in
9 windows*) cmd //c mklink //j t\\.prove "$(cygpath -aw "$cache_dir/.prove")";;
10 *) ln -s "$cache_dir/.prove" t/.prove;;
11 esac
13 run_tests=t
15 case "$jobname" in
16 linux-gcc)
17 export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main
19 linux-TEST-vars)
20 export GIT_TEST_SPLIT_INDEX=yes
21 export GIT_TEST_MERGE_ALGORITHM=recursive
22 export GIT_TEST_FULL_IN_PACK_ARRAY=true
23 export GIT_TEST_OE_SIZE=10
24 export GIT_TEST_OE_DELTA_SIZE=5
25 export GIT_TEST_COMMIT_GRAPH=1
26 export GIT_TEST_COMMIT_GRAPH_CHANGED_PATHS=1
27 export GIT_TEST_MULTI_PACK_INDEX=1
28 export GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP=1
29 export GIT_TEST_ADD_I_USE_BUILTIN=0
30 export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=master
31 export GIT_TEST_WRITE_REV_INDEX=1
32 export GIT_TEST_CHECKOUT_WORKERS=2
34 linux-clang)
35 export GIT_TEST_DEFAULT_HASH=sha1
37 linux-sha256)
38 export GIT_TEST_DEFAULT_HASH=sha256
40 pedantic)
41 # Don't run the tests; we only care about whether Git can be
42 # built.
43 export DEVOPTS=pedantic
44 run_tests=
46 esac
48 group Build make
49 if test -n "$run_tests"
50 then
51 group "Run tests" make test ||
52 handle_failed_tests
54 check_unignored_build_artifacts
56 save_good_tree