diff options
Diffstat (limited to 'test/integration/docker/git_server')
-rw-r--r-- | test/integration/docker/git_server/Dockerfile | 23 | ||||
-rwxr-xr-x | test/integration/docker/git_server/setup_repo.sh | 29 |
2 files changed, 52 insertions, 0 deletions
diff --git a/test/integration/docker/git_server/Dockerfile b/test/integration/docker/git_server/Dockerfile new file mode 100644 index 0000000..a5756d3 --- /dev/null +++ b/test/integration/docker/git_server/Dockerfile @@ -0,0 +1,23 @@ +FROM alpine:3.15 + +RUN apk --no-cache add bash git openssh-server tini && \ + echo 'root:root' | chpasswd && \ + git config --global user.name 'John Doe' && \ + git config --global user.email 'John.Doe@example.com' && \ + sed -ri 's/^#?PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config + +WORKDIR /root + +COPY ["ssh/server_key", "/etc/ssh/ssh_host_ed25519_key"] +COPY ["ssh/server_key.pub", "/etc/ssh/ssh_host_ed25519_key.pub"] +COPY ["ssh/client_key.pub", "./.ssh/authorized_keys"] + +RUN chmod 0600 -- /etc/ssh/ssh_host_ed25519_key && \ + chmod 0700 -- ./.ssh/ && \ + chmod 0600 -- ./.ssh/authorized_keys + +COPY ["git_server/setup_repo.sh", "./"] +RUN ./setup_repo.sh + +ENTRYPOINT ["/sbin/tini", "--"] +CMD ["/usr/sbin/sshd", "-D"] diff --git a/test/integration/docker/git_server/setup_repo.sh b/test/integration/docker/git_server/setup_repo.sh new file mode 100755 index 0000000..82ae711 --- /dev/null +++ b/test/integration/docker/git_server/setup_repo.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash + +set -o errexit -o nounset -o pipefail + +readonly local_repo_path="$HOME/test_repo" + +setup_local_repo() { + echo + echo ---------------------------------------------------------------------- + echo Setting up upstream repository + echo ---------------------------------------------------------------------- + + mkdir -p -- "$local_repo_path" + pushd -- "$local_repo_path" > /dev/null + git init + echo '1' > 1.txt + git add . + git commit -m 'first commit' + echo '2' > 2.txt + git add . + git commit -m 'second commit' + popd > /dev/null +} + +main() { + setup_local_repo +} + +main |