]> git.ipfire.org Git - thirdparty/git.git/blob - ci/run-build-and-tests.sh
parse-options: simplify positivation handling
[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 pedantic)
41 # Don't run the tests; we only care about whether Git can be
42 # built.
43 export DEVOPTS=pedantic
44 run_tests=
45 ;;
46 esac
47
48 group Build make
49 if test -n "$run_tests"
50 then
51 group "Run tests" make test ||
52 handle_failed_tests
53 fi
54 check_unignored_build_artifacts
55
56 save_good_tree