aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/.travis/docker/server
diff options
context:
space:
mode:
authorEgor Tensin <Egor.Tensin@gmail.com>2020-01-09 14:27:22 +0300
committerEgor Tensin <Egor.Tensin@gmail.com>2020-01-09 19:53:31 +0300
commitb74f0554b7a40f2481db8baf3c986516f522f127 (patch)
treee7cdf33851fa82b3e00d5804cd993943c4a0d3e5 /.travis/docker/server
parentadd Travis tests (diff)
downloadcgitize-b74f0554b7a40f2481db8baf3c986516f522f127.tar.gz
cgitize-b74f0554b7a40f2481db8baf3c986516f522f127.zip
Travis: add docker tests
Diffstat (limited to '.travis/docker/server')
-rw-r--r--.travis/docker/server/Dockerfile22
-rwxr-xr-x.travis/docker/server/setup_repo.sh24
2 files changed, 46 insertions, 0 deletions
diff --git a/.travis/docker/server/Dockerfile b/.travis/docker/server/Dockerfile
new file mode 100644
index 0000000..035d871
--- /dev/null
+++ b/.travis/docker/server/Dockerfile
@@ -0,0 +1,22 @@
+FROM alpine:3.11
+
+RUN apk --no-cache add bash git openssh-server && \
+ echo 'root:root' | chpasswd && \
+ git config --global user.name 'Travis CI User' && \
+ git config --global user.email 'travis@example.org' && \
+ sed -ri 's/^#?PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config
+
+WORKDIR /root
+
+COPY ["ssh/server_key", "/etc/ssh/ssh_host_rsa_key"]
+COPY ["ssh/server_key.pub", "/etc/ssh/ssh_host_rsa_key.pub"]
+COPY ["ssh/client_key.pub", "./.ssh/authorized_keys"]
+
+RUN chmod 0600 -- /etc/ssh/ssh_host_rsa_key && \
+ chmod 0700 -- ./.ssh/ && \
+ chmod 0600 -- ./.ssh/authorized_keys
+
+COPY ["server/setup_repo.sh", "./"]
+RUN ./setup_repo.sh
+
+CMD ["/usr/sbin/sshd", "-D"]
diff --git a/.travis/docker/server/setup_repo.sh b/.travis/docker/server/setup_repo.sh
new file mode 100755
index 0000000..3d5b899
--- /dev/null
+++ b/.travis/docker/server/setup_repo.sh
@@ -0,0 +1,24 @@
+#!/usr/bin/env bash
+
+set -o errexit -o nounset -o pipefail
+
+readonly local_repo_path="$HOME/test_repo"
+
+setup_local_repo() {
+ 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