mirror of
https://github.com/devilbox/docker-php-fpm.git
synced 2025-12-10 11:01:14 +00:00
Ensured CI tests are platform agnostic (amd64 vs arm64)
This commit is contained in:
@@ -93,8 +93,8 @@ function get_random_name() {
|
||||
local name=
|
||||
|
||||
for i in {1..15}; do
|
||||
rand="$( shuf -i 0-${len} -n 1 )"
|
||||
rand=$(( rand - 1 ))
|
||||
rand="$( shuf -i "0-${len}" -n 1 )"
|
||||
rand="$(( rand - 1 ))"
|
||||
name="${name}${chr[$rand]}"
|
||||
i="${i}" # simply to get rid of shellcheck complaints
|
||||
done
|
||||
@@ -107,16 +107,18 @@ function get_random_name() {
|
||||
###
|
||||
function docker_run() {
|
||||
local image_name="${1}"
|
||||
|
||||
local architecture="${2}"
|
||||
shift
|
||||
shift
|
||||
|
||||
local args="${*}"
|
||||
|
||||
# Returns docker-id
|
||||
did="$( run "docker run --rm -d --name $( get_random_name ) ${args} ${image_name}" "1" )"
|
||||
did="$( run "docker run --rm -d --platform ${architecture} --name $( get_random_name ) ${args} ${image_name}" "1" )"
|
||||
sleep 10
|
||||
|
||||
# If it fails, start again in foreground to fail again, but show errors
|
||||
if ! docker exec $(tty -s && echo "-it" || echo ) ${did} ls >/dev/null 2>&1; then
|
||||
if ! docker exec "$(tty -s && echo "-it" || echo )" "${did}" ls >/dev/null 2>&1; then
|
||||
run "docker run --rm --name $( get_random_name ) ${args} ${image_name}" "1"
|
||||
return 1
|
||||
fi
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -22,7 +23,7 @@ FLAVOUR="${3}"
|
||||
###
|
||||
### Debug == 0
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=0" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=0" )"
|
||||
|
||||
if ! run_fail "docker logs ${did} 2>&1 | grep 'Debug level'"; then
|
||||
docker_logs "${did}" || true
|
||||
@@ -48,7 +49,7 @@ docker_stop "${did}"
|
||||
###
|
||||
### Debug == 1
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=1" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=1" )"
|
||||
|
||||
if ! run "docker logs ${did} 2>&1 | grep 'Debug level: 1'"; then
|
||||
docker_logs "${did}" || true
|
||||
@@ -74,7 +75,7 @@ docker_stop "${did}"
|
||||
###
|
||||
### Debug == 2
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2" )"
|
||||
|
||||
if ! run "docker logs ${did} 2>&1 | grep 'Debug level: 2'"; then
|
||||
docker_logs "${did}" || true
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -22,7 +23,7 @@ FLAVOUR="${3}"
|
||||
###
|
||||
### uid: 1005 (new uid)
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=1005" )"
|
||||
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
|
||||
@@ -42,7 +43,7 @@ docker_stop "${did}"
|
||||
###
|
||||
### uid: 1000 (same uid)
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=1000" )"
|
||||
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
|
||||
@@ -62,7 +63,7 @@ docker_stop "${did}"
|
||||
###
|
||||
### uid: 33 (existing uid)
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=33" )"
|
||||
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
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -22,7 +23,7 @@ FLAVOUR="${3}"
|
||||
###
|
||||
### gid: 1005 (new gid)
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_GID=1005" )"
|
||||
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
|
||||
@@ -42,7 +43,7 @@ docker_stop "${did}"
|
||||
###
|
||||
### gid: 1000 (same gid)
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_GID=1000" )"
|
||||
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
|
||||
@@ -62,7 +63,7 @@ docker_stop "${did}"
|
||||
###
|
||||
### gid: 33 (existing gid)
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_GID=33" )"
|
||||
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
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -38,10 +39,10 @@ chmod 0777 "${DOC_ROOT_HOST}"
|
||||
chmod 0644 "${DOC_ROOT_HOST}/index.php"
|
||||
|
||||
# Pull Image
|
||||
run "until docker pull ${CONTAINER}; do sleep 1; done"
|
||||
run "until docker pull --platform ${ARCH} ${CONTAINER}; do sleep 1; done"
|
||||
|
||||
# Start PHP-FPM
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT}" )"
|
||||
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}" )"
|
||||
|
||||
# Nginx.conf
|
||||
@@ -62,7 +63,7 @@ name="$( docker_name "${did}" )"
|
||||
} > "${CONFIG_HOST}/php.conf"
|
||||
|
||||
# Start Nginx
|
||||
ndid="$( docker_run "${CONTAINER}" "-v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${CONFIG_HOST}:${CONFIG_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
ndid="$( docker_run "${CONTAINER}" "${ARCH}" "-v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${CONFIG_HOST}:${CONFIG_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
|
||||
# Wait for both containers to be up and running
|
||||
run "sleep 10"
|
||||
@@ -75,7 +76,7 @@ run "sleep 10"
|
||||
# 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 &
|
||||
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"
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -22,7 +23,7 @@ FLAVOUR="${3}"
|
||||
###
|
||||
### Ensuring 'apt update' works without any issues
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2" )"
|
||||
|
||||
if ! docker_exec "${did}" "apt update"; then
|
||||
docker_logs "${did}" || true
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
@@ -21,7 +22,7 @@ FLAVOUR="${3}"
|
||||
|
||||
ERROR=0
|
||||
for dir in $( ls -1 "${CWD}/modules/" ); do
|
||||
if ! "${CWD}/modules.sh" "${IMAGE}" "${VERSION}" "${FLAVOUR}" "${dir}"; then
|
||||
if ! "${CWD}/modules.sh" "${IMAGE}" "${ARCH}" "${VERSION}" "${FLAVOUR}" "${dir}"; then
|
||||
ERROR="$(( ERROR + 1 ))"
|
||||
fi
|
||||
done
|
||||
|
||||
@@ -12,9 +12,10 @@ if [ "${#}" != "4" ]; then
|
||||
fi
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
MODULE="${4}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
MODULE="${5}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -47,6 +48,7 @@ fi
|
||||
WORKDIR="/tmp/${MODULE}"
|
||||
docker run \
|
||||
--rm \
|
||||
--platform "${ARCH}" \
|
||||
-e DEBUG_ENTRYPOINT=0 \
|
||||
-e NEW_UID="$(id -u)" \
|
||||
-e NEW_GID="$(id -g)" \
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -22,7 +23,7 @@ FLAVOUR="${3}"
|
||||
###
|
||||
### Europe/Berlin
|
||||
###
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e TIMEZONE=Europe/Berlin" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e TIMEZONE=Europe/Berlin" )"
|
||||
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'Europe/Berlin'"; then
|
||||
docker_logs "${did}" || true
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -39,13 +40,15 @@ chmod 0777 -R "${LOG_DIR_HOST}"
|
||||
chmod 0777 -R "${CFG_DIR_HOST}"
|
||||
chmod 0777 -R "${WWW_DIR_HOST}"
|
||||
|
||||
# Pull Image
|
||||
run "until docker pull --platform ${ARCH} ${CONTAINER}; do sleep 1; done"
|
||||
|
||||
###
|
||||
### Start container
|
||||
###
|
||||
|
||||
# Start PHP-FPM
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e DOCKER_LOGS=1 -v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${LOG_DIR_HOST}:/var/log/php" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e DOCKER_LOGS=1 -v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${LOG_DIR_HOST}:/var/log/php" )"
|
||||
name="$( docker_name "${did}" )"
|
||||
|
||||
# Nginx.conf
|
||||
@@ -67,7 +70,7 @@ name="$( docker_name "${did}" )"
|
||||
|
||||
|
||||
# Start Nginx
|
||||
ndid="$( docker_run "${CONTAINER}" "-v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${CFG_DIR_HOST}:${CFG_DIR_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
ndid="$( docker_run "${CONTAINER}" "${ARCH}" "-v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${CFG_DIR_HOST}:${CFG_DIR_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
|
||||
# Wait for both containers to be up and running
|
||||
run "sleep 10"
|
||||
@@ -96,7 +99,7 @@ fi
|
||||
|
||||
if [ -f "${LOG_DIR_HOST}/php-fpm.access" ]; then
|
||||
echo "Access log should not exist: ${LOG_DIR_HOST}/php-fpm.access"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
ls -lap "${LOG_DIR_HOST}/"
|
||||
cat "${LOG_DIR_HOST}/php-fpm.access"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
@@ -110,7 +113,7 @@ fi
|
||||
|
||||
if [ -f "${LOG_DIR_HOST}/php-fpm.error" ]; then
|
||||
echo "Error log should not exist: ${LOG_DIR_HOST}/php-fpm.error"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
ls -lap "${LOG_DIR_HOST}/"
|
||||
cat "${LOG_DIR_HOST}/php-fpm.error"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -39,13 +40,15 @@ chmod 0777 -R "${LOG_DIR_HOST}"
|
||||
chmod 0777 -R "${CFG_DIR_HOST}"
|
||||
chmod 0777 -R "${WWW_DIR_HOST}"
|
||||
|
||||
# Pull Image
|
||||
run "until docker pull --platform ${ARCH} ${CONTAINER}; do sleep 1; done"
|
||||
|
||||
###
|
||||
### Start container
|
||||
###
|
||||
|
||||
# Start PHP-FPM
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e DOCKER_LOGS=0 -v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${LOG_DIR_HOST}:/var/log/php" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e DOCKER_LOGS=0 -v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${LOG_DIR_HOST}:/var/log/php" )"
|
||||
name="$( docker_name "${did}" )"
|
||||
|
||||
# Nginx.conf
|
||||
@@ -67,7 +70,7 @@ name="$( docker_name "${did}" )"
|
||||
|
||||
|
||||
# Start Nginx
|
||||
ndid="$( docker_run "${CONTAINER}" "-v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${CFG_DIR_HOST}:${CFG_DIR_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
ndid="$( docker_run "${CONTAINER}" "${ARCH}" "-v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${CFG_DIR_HOST}:${CFG_DIR_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
|
||||
# Wait for both containers to be up and running
|
||||
run "sleep 10"
|
||||
@@ -96,7 +99,7 @@ fi
|
||||
|
||||
if [ ! -f "${LOG_DIR_HOST}/php-fpm.access" ]; then
|
||||
echo "Access log does not exist: ${LOG_DIR_HOST}/php-fpm.access"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
ls -lap "${LOG_DIR_HOST}/"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
@@ -108,7 +111,7 @@ if [ ! -f "${LOG_DIR_HOST}/php-fpm.access" ]; then
|
||||
fi
|
||||
if [ ! -r "${LOG_DIR_HOST}/php-fpm.access" ]; then
|
||||
echo "Access log is not readable"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
ls -lap "${LOG_DIR_HOST}/"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
@@ -121,7 +124,7 @@ fi
|
||||
|
||||
if [ ! -f "${LOG_DIR_HOST}/php-fpm.error" ]; then
|
||||
echo "Error log does not exist: ${LOG_DIR_HOST}/php-fpm.error"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
ls -lap "${LOG_DIR_HOST}/"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
@@ -133,7 +136,7 @@ if [ ! -f "${LOG_DIR_HOST}/php-fpm.error" ]; then
|
||||
fi
|
||||
if [ ! -r "${LOG_DIR_HOST}/php-fpm.error" ]; then
|
||||
echo "Error log is not readable"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
ls -lap "${LOG_DIR_HOST}/"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -23,7 +24,7 @@ FLAVOUR="${3}"
|
||||
### Postfix
|
||||
###
|
||||
MOUNTPOINT="$( mktemp --directory )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e ENABLE_MAIL=2 -v ${MOUNTPOINT}:/var/mail" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e ENABLE_MAIL=2 -v ${MOUNTPOINT}:/var/mail" )"
|
||||
run "sleep 10"
|
||||
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'ENABLE_MAIL'"; then
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -25,14 +26,14 @@ FLAVOUR="${3}"
|
||||
CONTAINER="mysql:5.6"
|
||||
|
||||
# Pull Container
|
||||
run "until docker pull ${CONTAINER}; do sleep 1; done"
|
||||
run "until docker pull --platform ${ARCH} ${CONTAINER}; do sleep 1; done"
|
||||
|
||||
# Start mysql container
|
||||
mdid="$( docker_run "${CONTAINER}" "-e MYSQL_ALLOW_EMPTY_PASSWORD=yes" )"
|
||||
mdid="$( docker_run "${CONTAINER}" "${ARCH}" "-e MYSQL_ALLOW_EMPTY_PASSWORD=yes" )"
|
||||
mname="$( docker_name "${mdid}" )"
|
||||
run "sleep 5"
|
||||
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e FORWARD_PORTS_TO_LOCALHOST=3306:${mname}:3306 --link ${mname}" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-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_logs "${mdid}" || true
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -44,10 +45,10 @@ chmod 0777 "${DOC_ROOT_HOST}"
|
||||
chmod 0644 "${DOC_ROOT_HOST}/index.php"
|
||||
|
||||
# Pull container
|
||||
run "until docker pull ${CONTAINER}; do sleep 1; done"
|
||||
run "until docker pull --platform ${ARCH} ${CONTAINER}; do sleep 1; done"
|
||||
|
||||
# Start PHP-FPM
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${PHP_INI_HOST}:${PHP_INI_CONT}" )"
|
||||
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} -v ${PHP_INI_HOST}:${PHP_INI_CONT}" )"
|
||||
name="$( docker_name "${did}" )"
|
||||
|
||||
# Nginx.conf
|
||||
@@ -69,7 +70,7 @@ name="$( docker_name "${did}" )"
|
||||
|
||||
|
||||
# Start Nginx
|
||||
ndid="$( docker_run "${CONTAINER}" "-v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${CONFIG_HOST}:${CONFIG_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
ndid="$( docker_run "${CONTAINER}" "${ARCH}" "-v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${CONFIG_HOST}:${CONFIG_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
|
||||
# Wait for both containers to be up and running
|
||||
run "sleep 10"
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -49,10 +50,10 @@ chmod 0777 "${DOC_ROOT_HOST}"
|
||||
chmod 0644 "${DOC_ROOT_HOST}/index.php"
|
||||
|
||||
# Pull container
|
||||
run "until docker pull ${CONTAINER}; do sleep 1; done"
|
||||
run "until docker pull --platform ${ARCH} ${CONTAINER}; do sleep 1; done"
|
||||
|
||||
# Start PHP-FPM
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${PHP_CNF_HOST}:${PHP_CNF_CONT}" )"
|
||||
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} -v ${PHP_CNF_HOST}:${PHP_CNF_CONT}" )"
|
||||
name="$( docker_name "${did}" )"
|
||||
|
||||
# Nginx.conf
|
||||
@@ -74,7 +75,7 @@ name="$( docker_name "${did}" )"
|
||||
|
||||
|
||||
# Start Nginx
|
||||
ndid="$( docker_run "${CONTAINER}" "-v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${CONFIG_HOST}:${CONFIG_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
ndid="$( docker_run "${CONTAINER}" "${ARCH}" "-v ${DOC_ROOT_HOST}:${DOC_ROOT_CONT} -v ${CONFIG_HOST}:${CONFIG_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
|
||||
# Wait for both containers to be up and running
|
||||
run "sleep 10"
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -33,7 +34,7 @@ printf "#!/bin/bash\\necho 'abcdefghijklmnopq';\\n" > "${RUN_SH_HOST}/myscript1.
|
||||
chmod +x "${RUN_SH_HOST}/myscript1.sh"
|
||||
|
||||
# Start PHP-FPM
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -v ${RUN_SH_HOST}:${RUN_SH_CONT}" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -v ${RUN_SH_HOST}:${RUN_SH_CONT}" )"
|
||||
|
||||
# Wait for both containers to be up and running
|
||||
run "sleep 10"
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -33,7 +34,7 @@ printf "#!/bin/bash\\necho 'abcdefghijklmnopq';\\n" > "${RUN_SH_HOST}/myscript1.
|
||||
chmod +x "${RUN_SH_HOST}/myscript1.sh"
|
||||
|
||||
# Start PHP-FPM
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -v ${RUN_SH_HOST}:${RUN_SH_CONT}" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -v ${RUN_SH_HOST}:${RUN_SH_CONT}" )"
|
||||
|
||||
# Wait for both containers to be up and running
|
||||
run "sleep 10"
|
||||
|
||||
@@ -45,41 +45,41 @@ FLAVOUR="${4}"
|
||||
### Run tests
|
||||
###
|
||||
if [ "${FLAVOUR}" = "base" ] || [ "${FLAVOUR}" = "mods" ] || [ "${FLAVOUR}" = "prod" ] || [ "${FLAVOUR}" = "work" ]; then
|
||||
TESTS="$( find ${CWD} -regex "${CWD}/base/[0-9].+.*\.sh" | sort -u )"
|
||||
TESTS="$( find "${CWD}" -regex "${CWD}/base/[0-9].+.*\.sh" | sort -u )"
|
||||
for t in ${TESTS}; do
|
||||
printf "\n\n\033[0;33m%s\033[0m\n" "################################################################################"
|
||||
printf "\033[0;33m%s %s\033[0m\n" "#" "[${VERSION}-${FLAVOUR}] (${ARCH}): ${t}"
|
||||
printf "\033[0;33m%s\033[0m\n\n" "################################################################################"
|
||||
time ${t} "${IMAGE}" "${VERSION}" "${FLAVOUR}"
|
||||
time ${t} "${IMAGE}" "${ARCH}" "${VERSION}" "${FLAVOUR}"
|
||||
done
|
||||
fi
|
||||
|
||||
if [ "${FLAVOUR}" = "mods" ] || [ "${FLAVOUR}" = "prod" ] || [ "${FLAVOUR}" = "work" ]; then
|
||||
TESTS="$( find ${CWD} -regex "${CWD}/mods/[0-9].+.*\.sh" | sort -u )"
|
||||
TESTS="$( find "${CWD}" -regex "${CWD}/mods/[0-9].+.*\.sh" | sort -u )"
|
||||
for t in ${TESTS}; do
|
||||
printf "\n\n\033[0;33m%s\033[0m\n" "################################################################################"
|
||||
printf "\033[0;33m%s %s\033[0m\n" "#" "[${VERSION}-${FLAVOUR}] (${ARCH}): ${t}"
|
||||
printf "\033[0;33m%s\033[0m\n\n" "################################################################################"
|
||||
time ${t} "${IMAGE}" "${VERSION}" "${FLAVOUR}"
|
||||
time ${t} "${IMAGE}" "${ARCH}" "${VERSION}" "${FLAVOUR}"
|
||||
done
|
||||
fi
|
||||
|
||||
if [ "${FLAVOUR}" = "prod" ] || [ "${FLAVOUR}" = "work" ]; then
|
||||
TESTS="$( find ${CWD} -regex "${CWD}/prod/[0-9].+.*\.sh" | sort -u )"
|
||||
TESTS="$( find "${CWD}" -regex "${CWD}/prod/[0-9].+.*\.sh" | sort -u )"
|
||||
for t in ${TESTS}; do
|
||||
printf "\n\n\033[0;33m%s\033[0m\n" "################################################################################"
|
||||
printf "\033[0;33m%s %s\033[0m\n" "#" "[${VERSION}-${FLAVOUR}] (${ARCH}): ${t}"
|
||||
printf "\033[0;33m%s\033[0m\n\n" "################################################################################"
|
||||
time ${t} "${IMAGE}" "${VERSION}" "${FLAVOUR}"
|
||||
time ${t} "${IMAGE}" "${ARCH}" "${VERSION}" "${FLAVOUR}"
|
||||
done
|
||||
fi
|
||||
|
||||
if [ "${FLAVOUR}" = "work" ]; then
|
||||
TESTS="$( find ${CWD} -regex "${CWD}/work/[0-9].+.*\.sh" | sort -u )"
|
||||
TESTS="$( find "${CWD}" -regex "${CWD}/work/[0-9].+.*\.sh" | sort -u )"
|
||||
for t in ${TESTS}; do
|
||||
printf "\n\n\033[0;33m%s\033[0m\n" "################################################################################"
|
||||
printf "\033[0;33m%s %s\033[0m\n" "#" "[${VERSION}-${FLAVOUR}] (${ARCH}): ${t}"
|
||||
printf "\033[0;33m%s\033[0m\n\n" "################################################################################"
|
||||
time ${t} "${IMAGE}" "${VERSION}" "${FLAVOUR}"
|
||||
time ${t} "${IMAGE}" "${ARCH}" "${VERSION}" "${FLAVOUR}"
|
||||
done
|
||||
fi
|
||||
|
||||
@@ -7,8 +7,9 @@ set -o pipefail
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
ARCH="${2}"
|
||||
VERSION="${3}"
|
||||
FLAVOUR="${4}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
@@ -27,21 +28,21 @@ MOUNTPOINT="$( mktemp --directory )"
|
||||
CONTAINER="mysql:5.6"
|
||||
|
||||
# Pull Container
|
||||
run "until docker pull ${CONTAINER}; do sleep 1; done"
|
||||
run "until docker pull --platform ${ARCH} ${CONTAINER}; do sleep 1; done"
|
||||
|
||||
# Start mysql container
|
||||
mdid="$( docker_run "${CONTAINER}" "-e MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}" )"
|
||||
mdid="$( docker_run "${CONTAINER}" "${ARCH}" "-e MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}" )"
|
||||
mname="$( docker_name "${mdid}" )"
|
||||
run "sleep 10"
|
||||
|
||||
# Start PHP-FPM container
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e FORWARD_PORTS_TO_LOCALHOST=3306:${mname}:3306 -e MYSQL_BACKUP_USER=root -e MYSQL_BACKUP_PASS=${MYSQL_ROOT_PASSWORD} -e MYSQL_BACKUP_HOST=127.0.0.1 -v ${MOUNTPOINT}:/shared/backups --link ${mname}" )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "${ARCH}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e FORWARD_PORTS_TO_LOCALHOST=3306:${mname}:3306 -e MYSQL_BACKUP_USER=root -e MYSQL_BACKUP_PASS=${MYSQL_ROOT_PASSWORD} -e MYSQL_BACKUP_HOST=127.0.0.1 -v ${MOUNTPOINT}:/shared/backups --link ${mname}" )"
|
||||
|
||||
docker_exec "${did}" mysqldump-secure
|
||||
|
||||
if [ ! -d "${MOUNTPOINT}/mysql" ]; then
|
||||
echo "MySQL backup dir does not exist: ${MOUNTPOINT}/mysql"
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
ls -lap "${MOUNTPOINT}/"
|
||||
docker_logs "${did}" || true
|
||||
docker_logs "${mdid}" || true
|
||||
docker_stop "${did}" || true
|
||||
|
||||
Reference in New Issue
Block a user