mirror of
https://github.com/devilbox/docker-php-fpm.git
synced 2025-12-11 03:21:15 +00:00
Fix tests
This commit is contained in:
@@ -19,11 +19,11 @@ FLAVOUR="${3}"
|
||||
# Tests
|
||||
############################################################
|
||||
|
||||
|
||||
###
|
||||
### Debug == 0
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=0" )"
|
||||
|
||||
if ! run_fail "docker logs ${did} 2>&1 | grep 'Debug level'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
|
||||
@@ -31,13 +31,14 @@ if ! run "docker logs ${did} 2>&1 | grep -q '1005'"; then
|
||||
exit 1
|
||||
fi
|
||||
if ! docker_exec "${did}" "id | grep 'uid=1005'" "--user=devilbox"; then
|
||||
docker_logs "${did}"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
docker_stop "${did}"
|
||||
|
||||
|
||||
###
|
||||
### uid: 1000 (same uid)
|
||||
###
|
||||
@@ -50,13 +51,14 @@ if ! run "docker logs ${did} 2>&1 | grep -q '1000'"; then
|
||||
exit 1
|
||||
fi
|
||||
if ! docker_exec "${did}" "id | grep 'uid=1000'" "--user=devilbox"; then
|
||||
docker_logs "${did}"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
docker_stop "${did}"
|
||||
|
||||
|
||||
###
|
||||
### uid: 33 (existing uid)
|
||||
###
|
||||
@@ -69,7 +71,7 @@ if ! run "docker logs ${did} 2>&1 | grep -q '33'"; then
|
||||
exit 1
|
||||
fi
|
||||
if ! docker_exec "${did}" "id | grep 'uid=33'" "--user=devilbox"; then
|
||||
docker_logs "${did}"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
echo "Failed"
|
||||
exit 1
|
||||
|
||||
@@ -31,13 +31,14 @@ if ! run "docker logs ${did} 2>&1 | grep -q '1005'"; then
|
||||
exit 1
|
||||
fi
|
||||
if ! docker_exec "${did}" "id | grep 'gid=1005'" "--user=devilbox"; then
|
||||
docker_logs "${did}"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
docker_stop "${did}"
|
||||
|
||||
|
||||
###
|
||||
### gid: 1000 (same gid)
|
||||
###
|
||||
@@ -50,13 +51,14 @@ if ! run "docker logs ${did} 2>&1 | grep -q '1000'"; then
|
||||
exit 1
|
||||
fi
|
||||
if ! docker_exec "${did}" "id | grep 'gid=1000'" "--user=devilbox"; then
|
||||
docker_logs "${did}"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
docker_stop "${did}"
|
||||
|
||||
|
||||
###
|
||||
### gid: 33 (existing gid)
|
||||
###
|
||||
@@ -69,7 +71,7 @@ if ! run "docker logs ${did} 2>&1 | grep -q '33'"; then
|
||||
exit 1
|
||||
fi
|
||||
if ! docker_exec "${did}" "id | grep 'gid=33'" "--user=devilbox"; then
|
||||
docker_logs "${did}"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
echo "Failed"
|
||||
exit 1
|
||||
|
||||
75
tests/base/04-test-run_nginx.sh
Executable file
75
tests/base/04-test-run_nginx.sh
Executable file
@@ -0,0 +1,75 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
set -u
|
||||
set -o pipefail
|
||||
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
|
||||
|
||||
|
||||
############################################################
|
||||
# Tests
|
||||
############################################################
|
||||
|
||||
###
|
||||
### Test Nginx with PHP-FPM
|
||||
###
|
||||
WWW_PORT="12345"
|
||||
DOC_ROOT_HOST="$( mktemp -d )"
|
||||
DOC_ROOT_CONT="/var/www/default"
|
||||
|
||||
CONFIG_HOST="$( mktemp -d )"
|
||||
CONFIG_CONT="/etc/nginx/conf.d"
|
||||
|
||||
FINDME="am_i_really_working"
|
||||
echo "${FINDME}" > "${DOC_ROOT_HOST}/index.php"
|
||||
|
||||
# Start PHP-FPM
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT}" )"
|
||||
name="$( docker_name "${did}" )"
|
||||
|
||||
# Nginx.conf
|
||||
{
|
||||
echo "server {"
|
||||
echo " server_name _;"
|
||||
echo " listen 80;"
|
||||
echo " root ${DOC_ROOT_CONT};"
|
||||
echo " index index.php;"
|
||||
echo " location ~* \.php\$ {"
|
||||
echo " fastcgi_index index.php;"
|
||||
echo " fastcgi_pass ${name}:9000;"
|
||||
echo " include fastcgi_params;"
|
||||
echo " fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;"
|
||||
echo " fastcgi_param SCRIPT_NAME \$fastcgi_script_name;"
|
||||
echo " }"
|
||||
echo "}"
|
||||
} > "${CONFIG_HOST}/php.conf"
|
||||
|
||||
# Start Nginx
|
||||
ndid="$( docker_run "nginx:stable" "-v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${CONFIG_HOST}:${CONFIG_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
|
||||
# Check PHP connectivity
|
||||
if ! run "curl -q 127.0.0.1:${WWW_PORT}/index.php 2>&1 | grep '${FINDME}'"; then
|
||||
docker_logs "${ndid}" || true
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${DOC_ROOT_HOST}"
|
||||
rm -rf "${CONFIG_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Cleanup
|
||||
docker_stop "${did}"
|
||||
docker_stop "${ndid}"
|
||||
rm -rf "${DOC_ROOT_HOST}"
|
||||
rm -rf "${CONFIG_HOST}"
|
||||
@@ -23,6 +23,7 @@ FLAVOUR="${3}"
|
||||
### Europe/Berlin
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e TIMEZONE=Europe/Berlin" )"
|
||||
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'Europe/Berlin'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
|
||||
@@ -29,6 +29,7 @@ run "sleep 10"
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'DOCKER_LOGS'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -38,6 +39,7 @@ if [ -f "${MOUNTPOINT}/php-fpm.access" ]; then
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -46,15 +48,14 @@ if [ -f "${MOUNTPOINT}/php-fpm.error" ]; then
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
run "ls -lap ${MOUNTPOINT}/"
|
||||
|
||||
docker_stop "${did}"
|
||||
run "rm -rf ${MOUNTPOINT}" || true
|
||||
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
|
||||
|
||||
###
|
||||
@@ -67,6 +68,7 @@ run "sleep 10"
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'DOCKER_LOGS'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -76,6 +78,7 @@ if [ ! -f "${MOUNTPOINT}/php-fpm.access" ]; then
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -84,6 +87,7 @@ if [ ! -r "${MOUNTPOINT}/php-fpm.access" ]; then
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -93,6 +97,7 @@ if [ ! -f "${MOUNTPOINT}/php-fpm.error" ]; then
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -101,12 +106,12 @@ if [ ! -r "${MOUNTPOINT}/php-fpm.error" ]; then
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
run "ls -lap ${MOUNTPOINT}/"
|
||||
run "cat ${MOUNTPOINT}/*"
|
||||
|
||||
docker_stop "${did}"
|
||||
run "rm -rf ${MOUNTPOINT}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
|
||||
@@ -29,6 +29,7 @@ run "sleep 10"
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'ENABLE_MAIL'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -38,6 +39,7 @@ if [ ! -f "${MOUNTPOINT}/devilbox" ]; then
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -46,6 +48,7 @@ if [ ! -r "${MOUNTPOINT}/devilbox" ]; then
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -57,10 +60,11 @@ run "sleep 5"
|
||||
if ! run "grep 'the subject' ${MOUNTPOINT}/devilbox"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
run "cat ${MOUNTPOINT}/devilbox"
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
"run cat ${MOUNTPOINT}/devilbox"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
docker_stop "${did}"
|
||||
run "rm -rf ${MOUNTPOINT}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
|
||||
@@ -30,21 +30,37 @@ run "sleep 5"
|
||||
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e FORWARD_PORTS_TO_LOCALHOST=3306:${mname}:3306 --link ${mname}" )"
|
||||
if ! run "docker logs ${did} 2>&1 | grep 'Forwarding ${mname}:3306'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
docker_logs "${did}" || true
|
||||
docker_logs "${mdid}" || true
|
||||
docker_stop "${did}" || true
|
||||
docker_stop "${mdid}" || true
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Test connectivity
|
||||
docker_exec "${did}" "ping -c 1 ${mname}"
|
||||
docker_exec "${did}" "echo | nc -w 1 ${mname} 3306"
|
||||
docker_exec "${did}" "echo | nc -w 1 127.0.0.1 3306"
|
||||
#docker_exec "${did}" "echo | nc -w 1 ${mname} 3306"
|
||||
#docker_exec "${did}" "echo | nc -w 1 127.0.0.1 3306"
|
||||
|
||||
# Only work container has mysql binary installed
|
||||
if [ "${FLAVOUR}" = "work" ]; then
|
||||
docker_exec "${did}" "mysql --user=root --password= --host=${mname} -e 'SHOW DATABASES;'"
|
||||
docker_exec "${did}" "mysql --user=root --password= --host=127.0.0.1 -e 'SHOW DATABASES;'"
|
||||
if ! docker_exec "${did}" "mysql --user=root --password= --host=${mname} -e 'SHOW DATABASES;'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_logs "${mdid}" || true
|
||||
docker_stop "${did}" || true
|
||||
docker_stop "${mdid}" || true
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if ! docker_exec "${did}" "mysql --user=root --password= --host=127.0.0.1 -e 'SHOW DATABASES;'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_logs "${mdid}" || true
|
||||
docker_stop "${did}" || true
|
||||
docker_stop "${mdid}" || true
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
docker_stop "${mdid}"
|
||||
docker_stop "${did}"
|
||||
|
||||
@@ -63,26 +63,26 @@ ndid="$( docker_run "nginx:stable" "-v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${CO
|
||||
|
||||
# Check entrypoint
|
||||
if ! run "docker logs ${did} | grep 'post.ini'"; then
|
||||
run "rm -rf ${DOC_ROOT_HOST}"
|
||||
run "rm -rf ${CONFIG_HOST}"
|
||||
run "rm -rf ${PHP_INI_HOST}"
|
||||
docker_logs "${ndid}" || true
|
||||
docker_logs "${did}" || true
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${DOC_ROOT_HOST}"
|
||||
rm -rf "${CONFIG_HOST}"
|
||||
rm -rf "${PHP_INI_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check PHP connectivity
|
||||
if ! run "curl -q 127.0.0.1:${WWW_PORT}/index.php >/dev/null 2>&1"; then
|
||||
run "rm -rf ${DOC_ROOT_HOST}"
|
||||
run "rm -rf ${CONFIG_HOST}"
|
||||
run "rm -rf ${PHP_INI_HOST}"
|
||||
docker_logs "${ndid}" || true
|
||||
docker_logs "${did}" || true
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${DOC_ROOT_HOST}"
|
||||
rm -rf "${CONFIG_HOST}"
|
||||
rm -rf "${PHP_INI_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -90,13 +90,13 @@ fi
|
||||
# Check modified php.ini
|
||||
if ! docker_exec "${did}" "php -r \"echo ini_get('post_max_size');\" | grep '17M'"; then
|
||||
docker_exec "${did}" "php -r \"echo ini_get('post_max_size');\""
|
||||
run "rm -rf ${DOC_ROOT_HOST}"
|
||||
run "rm -rf ${CONFIG_HOST}"
|
||||
run "rm -rf ${PHP_INI_HOST}"
|
||||
docker_logs "${ndid}" || true
|
||||
docker_logs "${did}" || true
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${DOC_ROOT_HOST}"
|
||||
rm -rf "${CONFIG_HOST}"
|
||||
rm -rf "${PHP_INI_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -104,13 +104,13 @@ fi
|
||||
# Check modified php.ini
|
||||
if ! run "curl -q 127.0.0.1:${WWW_PORT}/index.php 2>/dev/null | grep post_max_size | grep '17M'"; then
|
||||
docker_exec "${did}" "php -r \"echo ini_get('post_max_size');\""
|
||||
run "rm -rf ${DOC_ROOT_HOST}"
|
||||
run "rm -rf ${CONFIG_HOST}"
|
||||
run "rm -rf ${PHP_INI_HOST}"
|
||||
docker_logs "${ndid}" || true
|
||||
docker_logs "${did}" || true
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${DOC_ROOT_HOST}"
|
||||
rm -rf "${CONFIG_HOST}"
|
||||
rm -rf "${PHP_INI_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
@@ -119,6 +119,6 @@ fi
|
||||
# Cleanup
|
||||
docker_stop "${did}"
|
||||
docker_stop "${ndid}"
|
||||
run "rm -rf ${DOC_ROOT_HOST}"
|
||||
run "rm -rf ${CONFIG_HOST}"
|
||||
run "rm -rf ${PHP_INI_HOST}"
|
||||
rm -rf "${DOC_ROOT_HOST}"
|
||||
rm -rf "${CONFIG_HOST}"
|
||||
rm -rf "${PHP_INI_HOST}"
|
||||
|
||||
@@ -38,11 +38,11 @@ docker_exec "${did}" mysqldump-secure
|
||||
if [ ! -d "${MOUNTPOINT}/mysql" ]; then
|
||||
echo "MySQL backup dir does not exist: ${MOUNTPOINT}/mysql"
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}"
|
||||
docker_logs "${mdid}"
|
||||
docker_stop "${did}"
|
||||
docker_stop "${mdid}"
|
||||
run "rm -rf ${MOUNTPOINT}" || true
|
||||
docker_logs "${did}" || true
|
||||
docker_logs "${mdid}" || true
|
||||
docker_stop "${did}" || true
|
||||
docker_stop "${mdid}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -51,4 +51,4 @@ run "ls -lap ${MOUNTPOINT}/mysql/ | grep -E 'mysql\.sql\.gz\.info'"
|
||||
|
||||
docker_stop "${did}"
|
||||
docker_stop "${mdid}"
|
||||
run "rm -rf ${MOUNTPOINT}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
|
||||
Reference in New Issue
Block a user