aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/.ci/docker
diff options
context:
space:
mode:
authorEgor Tensin <Egor.Tensin@gmail.com>2021-07-31 17:39:46 +0300
committerEgor Tensin <Egor.Tensin@gmail.com>2021-07-31 17:39:46 +0300
commit8d2422274ae948f7412b6960597f5de91f3d8830 (patch)
tree88cc766fb5b0b11b685840dde7a896600583be6f /.ci/docker
parentrename "ssh" to "clone_via_ssh" in config (diff)
downloadcgitize-8d2422274ae948f7412b6960597f5de91f3d8830.tar.gz
cgitize-8d2422274ae948f7412b6960597f5de91f3d8830.zip
move all tests to test/
Diffstat (limited to '.ci/docker')
-rw-r--r--.ci/docker/.dockerignore5
-rw-r--r--.ci/docker/client/etc/cgitize.toml4
-rw-r--r--.ci/docker/client/output/.gitignore1
-rw-r--r--.ci/docker/docker-compose.yml16
-rw-r--r--.ci/docker/server/Dockerfile22
-rwxr-xr-x.ci/docker/server/setup_repo.sh29
-rw-r--r--.ci/docker/ssh/client_key8
-rw-r--r--.ci/docker/ssh/client_key.pub1
-rw-r--r--.ci/docker/ssh/server_key7
-rw-r--r--.ci/docker/ssh/server_key.pub1
-rwxr-xr-x.ci/docker/test.sh132
11 files changed, 0 insertions, 226 deletions
diff --git a/.ci/docker/.dockerignore b/.ci/docker/.dockerignore
deleted file mode 100644
index c0cb0ce..0000000
--- a/.ci/docker/.dockerignore
+++ /dev/null
@@ -1,5 +0,0 @@
-*
-
-!/server/**
-/server/Dockerfile
-!/ssh/**
diff --git a/.ci/docker/client/etc/cgitize.toml b/.ci/docker/client/etc/cgitize.toml
deleted file mode 100644
index 4e8fda7..0000000
--- a/.ci/docker/client/etc/cgitize.toml
+++ /dev/null
@@ -1,4 +0,0 @@
-[repositories.test_repo]
-
-name = "test_repo"
-clone_url = "root@server:~/test_repo"
diff --git a/.ci/docker/client/output/.gitignore b/.ci/docker/client/output/.gitignore
deleted file mode 100644
index 355164c..0000000
--- a/.ci/docker/client/output/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-*/
diff --git a/.ci/docker/docker-compose.yml b/.ci/docker/docker-compose.yml
deleted file mode 100644
index 6054764..0000000
--- a/.ci/docker/docker-compose.yml
+++ /dev/null
@@ -1,16 +0,0 @@
-version: '3'
-services:
- server:
- build:
- context: .
- dockerfile: server/Dockerfile
- image: server
- client:
- build:
- context: ../..
- dockerfile: Dockerfile
- image: client
- volumes:
- - ./client/etc/:/etc/cgitize:ro
- - "$SSH_AUTH_SOCK:/var/run/cgitize/ssh-agent.sock"
- - ./client/output:/var/tmp/cgitize/output
diff --git a/.ci/docker/server/Dockerfile b/.ci/docker/server/Dockerfile
deleted file mode 100644
index a6283d0..0000000
--- a/.ci/docker/server/Dockerfile
+++ /dev/null
@@ -1,22 +0,0 @@
-FROM alpine:3.11
-
-RUN apk --no-cache add bash git openssh-server && \
- 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 ["server/setup_repo.sh", "./"]
-RUN ./setup_repo.sh
-
-CMD ["/usr/sbin/sshd", "-D"]
diff --git a/.ci/docker/server/setup_repo.sh b/.ci/docker/server/setup_repo.sh
deleted file mode 100755
index 82ae711..0000000
--- a/.ci/docker/server/setup_repo.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/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
diff --git a/.ci/docker/ssh/client_key b/.ci/docker/ssh/client_key
deleted file mode 100644
index 7502c82..0000000
--- a/.ci/docker/ssh/client_key
+++ /dev/null
@@ -1,8 +0,0 @@
------BEGIN OPENSSH PRIVATE KEY-----
-b3BlbnNzaC1rZXktdjEAAAAACmFlczI1Ni1jdHIAAAAGYmNyeXB0AAAAGAAAABC0VWjnPC
-6+rVnkkogRW2onAAAAZAAAAAEAAAAzAAAAC3NzaC1lZDI1NTE5AAAAIDkpIMideN05ni89
-cmRjdbff6fj4qyukThD2X/gINlVMAAAAkOVOKvBjvIbIoc9JA2q8ui62PqP6dQwwsR94Vr
-/czMBQah5jFKdH9vDiI2JLaGjoH4VvT9mzuPBoE0Vchk6MEpud2dNXWMdb2ubG1d9yTWfV
-XhMXMeNd6UEjY7ypsldhR2X55dvIFeNr9B6A8dMy1Qpeyd62maBOwNdumbsG6MalXOFuv7
-srvnjlwUdHKZV9wg==
------END OPENSSH PRIVATE KEY-----
diff --git a/.ci/docker/ssh/client_key.pub b/.ci/docker/ssh/client_key.pub
deleted file mode 100644
index 6b0e3e9..0000000
--- a/.ci/docker/ssh/client_key.pub
+++ /dev/null
@@ -1 +0,0 @@
-ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDkpIMideN05ni89cmRjdbff6fj4qyukThD2X/gINlVM root@client
diff --git a/.ci/docker/ssh/server_key b/.ci/docker/ssh/server_key
deleted file mode 100644
index 07774eb..0000000
--- a/.ci/docker/ssh/server_key
+++ /dev/null
@@ -1,7 +0,0 @@
------BEGIN OPENSSH PRIVATE KEY-----
-b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW
-QyNTUxOQAAACCXhJs2H7dvamDdK51mhWEAGuXnBsCVEKdWxyPjWYNgigAAAJDx95CI8feQ
-iAAAAAtzc2gtZWQyNTUxOQAAACCXhJs2H7dvamDdK51mhWEAGuXnBsCVEKdWxyPjWYNgig
-AAAEBkubMLhAF/0hCKnq2l3BuexD4UIQ+qcXW5ke+DWhQ8DJeEmzYft29qYN0rnWaFYQAa
-5ecGwJUQp1bHI+NZg2CKAAAAC3Jvb3RAc2VydmVyAQI=
------END OPENSSH PRIVATE KEY-----
diff --git a/.ci/docker/ssh/server_key.pub b/.ci/docker/ssh/server_key.pub
deleted file mode 100644
index 601277f..0000000
--- a/.ci/docker/ssh/server_key.pub
+++ /dev/null
@@ -1 +0,0 @@
-ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJeEmzYft29qYN0rnWaFYQAa5ecGwJUQp1bHI+NZg2CK root@server
diff --git a/.ci/docker/test.sh b/.ci/docker/test.sh
deleted file mode 100755
index 7c76298..0000000
--- a/.ci/docker/test.sh
+++ /dev/null
@@ -1,132 +0,0 @@
-#!/usr/bin/env bash
-
-set -o errexit -o nounset -o pipefail
-
-script_dir="$( dirname -- "${BASH_SOURCE[0]}" )"
-script_dir="$( cd -- "$script_dir" && pwd )"
-readonly script_dir
-script_name="$( basename -- "${BASH_SOURCE[0]}" )"
-readonly script_name
-
-dump() {
- local prefix="${FUNCNAME[0]}"
- [ "${#FUNCNAME[@]}" -gt 1 ] && prefix="${FUNCNAME[1]}"
-
- local msg
- for msg; do
- echo "$script_name: $prefix: $msg"
- done
-}
-
-kill_ssh_agent() {
- [ -n "${SSH_AGENT_PID:+x}" ] || return 0
- dump "killing ssh-agent with PID $SSH_AGENT_PID"
- kill "$SSH_AGENT_PID"
-}
-
-spawn_ssh_agent() {
- [ -n "${SSH_AGENT_PID:+x}" ] && return 0
- if ! command -v ssh-agent > /dev/null 2>&1; then
- dump "could not find ssh-agent" >&2
- return 1
- fi
- local output
- output="$( ssh-agent -s )"
- eval "$output"
- if [ -z "${SSH_AGENT_PID:+x}" ]; then
- dump "could not start ssh-agent" >&2
- return 1
- fi
- trap kill_ssh_agent EXIT
-}
-
-setup_ssh_agent() {
- echo
- echo ----------------------------------------------------------------------
- echo Setting up ssh-agent
- echo ----------------------------------------------------------------------
-
- spawn_ssh_agent
-
- local key='ssh/client_key'
- chmod 0600 -- "$key"
- local password='password'
-
- local askpass_path
- askpass_path="$( mktemp --tmpdir="$script_dir" )"
-
- local askpass_rm
- askpass_rm="$( printf -- 'rm -- %q; trap - RETURN' "$askpass_path" )"
- trap "$askpass_rm" RETURN
-
- chmod 0700 -- "$askpass_path"
-
- local echo_password
- echo_password="$( printf -- 'echo %q' "$password" )"
- echo "$echo_password" > "$askpass_path"
-
- SSH_ASKPASS="$askpass_path" SSH_ASKPASS_REQUIRE=force DISPLAY= ssh-add "$key" > /dev/null 2>&1 < /dev/null
-}
-
-docker_build() {
- echo
- echo ----------------------------------------------------------------------
- echo Building Docker images
- echo ----------------------------------------------------------------------
-
- docker-compose build
-}
-
-setup() {
- setup_ssh_agent
- docker_build
-}
-
-run_server() {
- echo
- echo ----------------------------------------------------------------------
- echo Running the server
- echo ----------------------------------------------------------------------
-
- docker-compose up -d server
-}
-
-run_client() {
- echo
- echo ----------------------------------------------------------------------
- echo Running the client
- echo ----------------------------------------------------------------------
-
- if [ -z "${SSH_AUTH_SOCK:+x}" ]; then
- dump 'SSH_AUTH_SOCK is not defined' >&2
- return 1
- fi
- dump "SSH_AUTH_SOCK: $SSH_AUTH_SOCK"
- docker-compose run --rm client
-}
-
-run() {
- run_server
- run_client
-}
-
-verify() {
- echo
- echo ----------------------------------------------------------------------
- echo Checking the pulled repository
- echo ----------------------------------------------------------------------
-
- pushd -- "$script_dir/client/output/test_repo" > /dev/null
- git log --oneline
- popd > /dev/null
-}
-
-main() {
- pushd -- "$script_dir" > /dev/null
- setup
- run
- verify
- popd > /dev/null
-}
-
-main