diff --git a/tests/base/02-test-env-uid.sh b/tests/base/02-test-env-uid.sh index 411d216..6950e1e 100755 --- a/tests/base/02-test-env-uid.sh +++ b/tests/base/02-test-env-uid.sh @@ -23,58 +23,64 @@ FLAVOUR="${4}" ### ### uid: 1005 (new uid) ### -did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=1005" )" - -if ! run "docker logs ${did} 2>&1 | grep -q '1005'"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +print_h2 "DEBUG_ENTRYPOINT=2 NEW_UID=1005" +if ! name="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=1005" )"; then + exit 1 +fi +if ! run "docker logs ${name} 2>&1 | grep -q '1005'"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -if ! docker_exec "${did}" "id | grep 'uid=1005'" "--user=devilbox"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +if ! docker_exec "${name}" "id | grep 'uid=1005'" "--user=devilbox"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -docker_stop "${did}" +docker_stop "${name}" ### ### uid: 1000 (same uid) ### -did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=1000" )" - -if ! run "docker logs ${did} 2>&1 | grep -q '1000'"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +print_h2 "DEBUG_ENTRYPOINT=2 NEW_UID=1000" +if ! name="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=1000" )"; then + exit 1 +fi +if ! run "docker logs ${name} 2>&1 | grep -q '1000'"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -if ! docker_exec "${did}" "id | grep 'uid=1000'" "--user=devilbox"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +if ! docker_exec "${name}" "id | grep 'uid=1000'" "--user=devilbox"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -docker_stop "${did}" +docker_stop "${name}" ### ### uid: 33 (existing uid) ### -did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=33" )" - -if ! run "docker logs ${did} 2>&1 | grep -q '33'"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +print_h2 "DEBUG_ENTRYPOINT=2 NEW_UID=33" +if ! name="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=33" )"; then + exit 1 +fi +if ! run "docker logs ${name} 2>&1 | grep -q '33'"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -if ! docker_exec "${did}" "id | grep 'uid=33'" "--user=devilbox"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +if ! docker_exec "${name}" "id | grep 'uid=33'" "--user=devilbox"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -docker_stop "${did}" +docker_stop "${name}" diff --git a/tests/base/03-test-env-gid.sh b/tests/base/03-test-env-gid.sh index c77955a..baa4a2c 100755 --- a/tests/base/03-test-env-gid.sh +++ b/tests/base/03-test-env-gid.sh @@ -23,58 +23,64 @@ FLAVOUR="${4}" ### ### gid: 1005 (new gid) ### -did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_GID=1005" )" - -if ! run "docker logs ${did} 2>&1 | grep -q '1005'"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +print_h2 "DEBUG_ENTRYPOINT=2 NEW_GID=1005" +if ! name="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_GID=1005" )"; then + exit 1 +fi +if ! run "docker logs ${name} 2>&1 | grep -q '1005'"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -if ! docker_exec "${did}" "id | grep 'gid=1005'" "--user=devilbox"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +if ! docker_exec "${name}" "id | grep 'gid=1005'" "--user=devilbox"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -docker_stop "${did}" +docker_stop "${name}" ### ### gid: 1000 (same gid) ### -did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_GID=1000" )" - -if ! run "docker logs ${did} 2>&1 | grep -q '1000'"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +print_h2 "DEBUG_ENTRYPOINT=2 NEW_GID=1000" +if ! name="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_GID=1000" )"; then + exit 1 +fi +if ! run "docker logs ${name} 2>&1 | grep -q '1000'"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -if ! docker_exec "${did}" "id | grep 'gid=1000'" "--user=devilbox"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +if ! docker_exec "${name}" "id | grep 'gid=1000'" "--user=devilbox"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -docker_stop "${did}" +docker_stop "${name}" ### ### gid: 33 (existing gid) ### -did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_GID=33" )" - -if ! run "docker logs ${did} 2>&1 | grep -q '33'"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +print_h2 "DEBUG_ENTRYPOINT=2 NEW_GID=33" +if ! name="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_GID=33" )"; then + exit 1 +fi +if ! run "docker logs ${name} 2>&1 | grep -q '33'"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -if ! docker_exec "${did}" "id | grep 'gid=33'" "--user=devilbox"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +if ! docker_exec "${name}" "id | grep 'gid=33'" "--user=devilbox"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -docker_stop "${did}" +docker_stop "${name}" diff --git a/tests/base/04-test-run_nginx.sh b/tests/base/04-test-run_nginx.sh index 407ea21..ec0b94f 100755 --- a/tests/base/04-test-run_nginx.sh +++ b/tests/base/04-test-run_nginx.sh @@ -38,12 +38,15 @@ chmod 0777 "${CONFIG_HOST}" chmod 0777 "${DOC_ROOT_HOST}" chmod 0644 "${DOC_ROOT_HOST}/index.php" +print_h2 "Start PHP-FPM and Nginx" + # Pull Image run "until docker pull --platform ${ARCH} ${CONTAINER}; do sleep 1; done" # Start PHP-FPM -did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT}" )" -name="$( docker_name "${did}" )" +if ! name="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT}" )"; then + exit 1 +fi # Nginx.conf { @@ -63,8 +66,10 @@ name="$( docker_name "${did}" )" } > "${CONFIG_HOST}/php.conf" # Start Nginx -ndid="$( docker_run "${CONTAINER}" "${ARCH}" "-v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${CONFIG_HOST}:${CONFIG_CONT} -p ${WWW_PORT}:80 --link ${name}" )" - +if ! nginx_name="$( docker_run "${CONTAINER}" "${ARCH}" "-v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${CONFIG_HOST}:${CONFIG_CONT} -p ${WWW_PORT}:80 --link ${name}" )"; then + docker_stop "${name}" || true + exit 1 +fi # Wait for both containers to be up and running run "sleep 10" @@ -72,18 +77,18 @@ run "sleep 10" ### ### Check correct PHP-FPM user ### - +print_h2 "Check PHP-FPM user" # On pm = ondemand, there will be no child process, so we need to create some traffic # in order to have child proccesses spawn for i in $(seq 1 10); do curl "http://127.0.0.1:${WWW_PORT}/index.php?${i}" >/dev/null 2>&1 & done -if ! docker_exec "${did}" "ps auxw | grep -E '(php-fpm: pool|php-cgi)' | grep -v grep | awk '{ print \$1 }' | tail -1 | grep devilbox"; then - docker_exec "${did}" "ps auxw" +if ! docker_exec "${name}" "ps auxw | grep -E '(php-fpm: pool|php-cgi)' | grep -v grep | awk '{ print \$1 }' | tail -1 | grep devilbox"; then + docker_exec "${name}" "ps auxw" # Shutdown - docker_stop "${ndid}" || true - docker_stop "${did}" || true + docker_stop "${nginx_name}" || true + docker_stop "${name}" || true rm -rf "${DOC_ROOT_HOST}" rm -rf "${CONFIG_HOST}" echo "Failed" @@ -95,6 +100,7 @@ fi ### ### Test Nginx with PHP-FPM ### +print_h2 "Test Nginx with PHP-FPM" if ! run "curl -q -4 http://127.0.0.1:${WWW_PORT}/index.php 2>&1 | grep '${FINDME}'"; then # Info @@ -102,25 +108,25 @@ if ! run "curl -q -4 http://127.0.0.1:${WWW_PORT}/index.php 2>&1 | grep '${FINDM run "curl -4 http://127.0.0.1:${WWW_PORT}/index.php" || true run "curl -6 http://127.0.0.1:${WWW_PORT}/index.php" || true run "docker ps --no-trunc" - docker_exec "${ndid}" "nginx -t" + docker_exec "${nginx_name}" "nginx -t" # Show logs - docker_logs "${ndid}" || true - docker_logs "${did}" || true + docker_logs "${nginx_name}" || true + docker_logs "${name}" || true # Ensure file is available - docker_exec "${ndid}" "ls -la ${DOC_ROOT_CONT}/" - docker_exec "${did}" "ls -la ${DOC_ROOT_CONT}/" + docker_exec "${nginx_name}" "ls -la ${DOC_ROOT_CONT}/" + docker_exec "${name}" "ls -la ${DOC_ROOT_CONT}/" - docker_exec "${ndid}" "cat ${DOC_ROOT_CONT}/index.php" - docker_exec "${did}" "cat ${DOC_ROOT_CONT}/index.php" + docker_exec "${nginx_name}" "cat ${DOC_ROOT_CONT}/index.php" + docker_exec "${name}" "cat ${DOC_ROOT_CONT}/index.php" # Nginx configuration - docker_exec "${ndid}" "cat ${CONFIG_CONT}/php.conf" + docker_exec "${nginx_name}" "cat ${CONFIG_CONT}/php.conf" # Shutdown - docker_stop "${ndid}" || true - docker_stop "${did}" || true + docker_stop "${nginx_name}" || true + docker_stop "${name}" || true rm -rf "${DOC_ROOT_HOST}" rm -rf "${CONFIG_HOST}" echo "Failed" @@ -131,7 +137,8 @@ fi ### ### Clean-up ### -docker_stop "${did}" -docker_stop "${ndid}" +print_h2 "Cleanup" +docker_stop "${nginx_name}" +docker_stop "${name}" rm -rf "${DOC_ROOT_HOST}" rm -rf "${CONFIG_HOST}" diff --git a/tests/base/06-test-apt-repositories.sh b/tests/base/06-test-apt-repositories.sh index 5b1a794..8e5280b 100755 --- a/tests/base/06-test-apt-repositories.sh +++ b/tests/base/06-test-apt-repositories.sh @@ -23,12 +23,15 @@ FLAVOUR="${4}" ### ### Ensuring 'apt update' works without any issues ### -did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2" )" +print_h2 "Ensure 'apt update' works" +if ! name="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2" )"; then + exit 1 +fi -if ! docker_exec "${did}" "apt update"; then - docker_logs "${did}" || true - docker_stop "${did}" || true +if ! docker_exec "${name}" "apt update"; then + docker_logs "${name}" || true + docker_stop "${name}" || true echo "Failed" exit 1 fi -docker_stop "${did}" +docker_stop "${name}"