Browse Source

First ftp test

pull/625/head
Tim Kimber 5 years ago
parent
commit
12eb0ae0d1
No known key found for this signature in database GPG Key ID: 3E1804964E76BD18
4 changed files with 59 additions and 1 deletions
  1. +37
    -0
      test/33-ftp.bats
  2. +10
    -0
      test/Dockerfile-ubuntu
  3. +11
    -0
      test/restart-ftpd
  4. +1
    -1
      test/run-test.cmd

+ 37
- 0
test/33-ftp.bats View File

@ -0,0 +1,37 @@
#! /usr/bin/env bats
load '/bats-support/load.bash'
load '/bats-assert/load.bash'
load '/getssl/test/test_helper.bash'
# This is run for every test
setup() {
export CURL_CA_BUNDLE=/root/pebble-ca-bundle.crt
}
@test "Use FTP to create challenge file" {
if [ -n "$STAGING" ]; then
skip "Using staging server, skipping internal test"
fi
${CODE_DIR}/test/restart-ftpd
if [[ ! -d /var/www/html/.well-known/acme-challenge ]]; then
mkdir -p /var/www/html/.well-known/acme-challenge
chgrp -R www-data /var/www/html/.well-known
chmod -R g+w /var/www/html/.well-known
fi
CONFIG_FILE="getssl-http01.cfg"
setup_environment
init_getssl
cat <<- EOF > ${INSTALL_DIR}/.getssl/${GETSSL_CMD_HOST}/getssl_test_specific.cfg
ACL="ftp:ftpuser:ftpuser:${GETSSL_CMD_HOST}:/var/www/html/.well-known/acme-challenge"
EOF
create_certificate -d
assert_success
check_output_for_errors
}

+ 10
- 0
test/Dockerfile-ubuntu View File

@ -9,6 +9,16 @@ ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update --fix-missing
RUN apt-get install -y git curl dnsutils ldnsutils wget nginx-light
RUN apt-get install -y vim dos2unix # for debugging
RUN apt-get install -y ftp vsftpd
RUN apt-get install -y openssh-server
RUN echo "write_enable=YES" >> /etc/vsftpd.conf
RUN adduser ftpuser
RUN echo 'ftpuser:ftpuser' | chpasswd
RUN adduser ftpuser www-data
RUN adduser root www-data
RUN chown -R www-data.www-data /var/www
RUN chmod g+w -R /var/www
WORKDIR /root


+ 11
- 0
test/restart-ftpd View File

@ -0,0 +1,11 @@
#!/usr/bin/env bash
if [ "$GETSSL_OS" = "alpine" ]; then
killall -HUP vsftpd >&3-
sleep 5
elif [[ "$GETSSL_OS" == "centos"[78] ]]; then
pgrep vsftpd | head -1 | xargs kill -HUP
sleep 5
else
service vsftpd restart >/dev/null >&3-
fi

+ 1
- 1
test/run-test.cmd View File

@ -45,7 +45,7 @@ set GETSSL_OS=alpine
:Run
for %%I in (.) do set CurrDirName=%%~nxI
docker build --rm -f "test\Dockerfile-%OS%" -t getssl-%OS% .
docker build --pull --rm -f "test\Dockerfile-%OS%" -t getssl-%OS% .
@echo on
docker run -it ^
--env GETSSL_HOST=%ALIAS% %STAGING% ^


Loading…
Cancel
Save