]> git.ipfire.org Git - thirdparty/git.git/blob - ci/run-build-and-tests.sh
Merge branch 'rs/date-mode-pass-by-value'
[thirdparty/git.git] / ci / run-build-and-tests.sh
1 #!/bin/sh
2 #
3 # Build and test Git
4 #
5
6 . ${0%/*}/lib.sh
7
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
12
13 run_tests=t
14
15 case "$jobname" in
16 linux-gcc)
17 export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main
18 ;;
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_DEFAULT_INITIAL_BRANCH_NAME=master
30 export GIT_TEST_NO_WRITE_REV_INDEX=1
31 export GIT_TEST_CHECKOUT_WORKERS=2
32 export GIT_TEST_PACK_USE_BITMAP_BOUNDARY_TRAVERSAL=1
33 ;;
34 linux-clang)
35 export GIT_TEST_DEFAULT_HASH=sha1
36 ;;
37 linux-sha256)
38 export GIT_TEST_DEFAULT_HASH=sha256
39 ;;
40 linux-reftable|linux-reftable-leaks|osx-reftable)
41 export GIT_TEST_DEFAULT_REF_FORMAT=reftable
42 ;;
43 pedantic)
44 # Don't run the tests; we only care about whether Git can be
45 # built.
46 export DEVOPTS=pedantic
47 run_tests=
48 ;;
49 esac
50
51 group Build make
52 if test -n "$run_tests"
53 then
54 group "Run tests" make test ||
55 handle_failed_tests
56 group "Run unit tests" \
57 make DEFAULT_UNIT_TEST_TARGET=unit-tests-prove unit-tests
58 fi
59 check_unignored_build_artifacts
60
61 save_good_tree