summaryrefslogtreecommitdiff
path: root/ci/run-docker.sh
blob: b610dd4db84a3011ba7b5f8db744d598bc0b5b20 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#!/bin/sh
#
# Download and run Docker image to build and test Git
#

. ${0%/*}/lib.sh

case "$jobname" in
Linux32)
	CI_CONTAINER="daald/ubuntu32:xenial"
	;;
linux-musl)
	CI_CONTAINER=alpine
	;;
*)
	exit 1
	;;
esac

docker pull "$CI_CONTAINER"

# Use the following command to debug the docker build locally:
# <host-user-id> must be 0 if podman is used as drop-in replacement for docker
# $ docker run -itv "${PWD}:/usr/src/git" --entrypoint /bin/sh "$CI_CONTAINER"
# root@container:/# export jobname=<jobname>
# root@container:/# /usr/src/git/ci/run-docker-build.sh <host-user-id>

container_cache_dir=/tmp/container-cache

docker run \
	--interactive \
	--env DEVELOPER \
	--env DEFAULT_TEST_TARGET \
	--env GIT_PROVE_OPTS \
	--env GIT_TEST_OPTS \
	--env GIT_TEST_CLONE_2GB \
	--env MAKEFLAGS \
	--env jobname \
	--env cache_dir="$container_cache_dir" \
	--volume "${PWD}:/usr/src/git" \
	--volume "$cache_dir:$container_cache_dir" \
	"$CI_CONTAINER" \
	/usr/src/git/ci/run-docker-build.sh $(id -u $USER)

check_unignored_build_artifacts

save_good_tree