ci: drop run-docker scripts

We haven't used these scripts since 4a6e4b9602 (CI: remove Travis CI
support, 2021-11-23), as the GitHub Actions config has support for
directly running jobs within docker containers.

It's possible we might want to resurrect something like this in order to
be more agnostic to the CI platform. But it's not clear exactly what it
would look like. And in the meantime, it's just a maintenance burden as
we make changes to CI config, and is subject to bitrot. In fact it's
already broken; it references ci/install-docker-dependencies.sh, which
went away in 9cdeb34b96 (ci: merge scripts which install dependencies,
2024-04-12).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff King
2024-09-12 05:43:36 -04:00
committed by Junio C Hamano
parent 90f2c7240c
commit 48c55943c5
2 changed files with 0 additions and 113 deletions

View File

@ -1,66 +0,0 @@
#!/bin/sh
#
# Build and test Git inside container
#
# Usage:
# run-docker-build.sh <host-user-id>
#
set -ex
if test $# -ne 1 || test -z "$1"
then
echo >&2 "usage: run-docker-build.sh <host-user-id>"
exit 1
fi
case "$jobname" in
linux32)
switch_cmd="linux32 --32bit i386"
;;
linux-musl)
switch_cmd=
useradd () { adduser -D "$@"; }
;;
*)
exit 1
;;
esac
"${0%/*}/install-docker-dependencies.sh"
# If this script runs inside a docker container, then all commands are
# usually executed as root. Consequently, the host user might not be
# able to access the test output files.
# If a non 0 host user id is given, then create a user "ci" with that
# user id to make everything accessible to the host user.
HOST_UID=$1
if test $HOST_UID -eq 0
then
# Just in case someone does want to run the test suite as root.
CI_USER=root
else
CI_USER=ci
if test "$(id -u $CI_USER 2>/dev/null)" = $HOST_UID
then
echo "user '$CI_USER' already exists with the requested ID $HOST_UID"
else
useradd -u $HOST_UID $CI_USER
fi
fi
# Build and test
command $switch_cmd su -m -l $CI_USER -c "
set -ex
export DEVELOPER='$DEVELOPER'
export DEFAULT_TEST_TARGET='$DEFAULT_TEST_TARGET'
export GIT_PROVE_OPTS='$GIT_PROVE_OPTS'
export GIT_TEST_OPTS='$GIT_TEST_OPTS'
export GIT_TEST_CLONE_2GB='$GIT_TEST_CLONE_2GB'
export MAKEFLAGS='$MAKEFLAGS'
export cache_dir='$cache_dir'
cd /usr/src/git
test -n '$cache_dir' && ln -s '$cache_dir/.prove' t/.prove
make
make test
"

View File

@ -1,47 +0,0 @@
#!/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