# @todo if there is a composer.lock file present, there are chances it might be a leftover from when running the
# container using a different php version. We should then back it up / do some symlink magic to make sure that
# it matches the current php version and a hash of composer.json...
-sudo "${USERNAME}" -c "cd ${TESTS_ROOT_DIR} && composer install"
+su "${USERNAME}" -c "cd ${TESTS_ROOT_DIR} && composer install"
trap clean_up TERM
export UBUNTU_VERSION=${UBUNTU_VERSION:-focal}
CONTAINER_USER=docker
-CONTAINER_BUILD_DIR="/home/${CONTAINER_USER}/build"
+CONTAINER_WORKSPACE_DIR="/home/${CONTAINER_USER}/workspace"
ROOT_DIR="$(dirname -- "$(dirname -- "$(dirname -- "$(readlink -f "$0")")")")"
IMAGE_NAME=phpxmlrpc:${UBUNTU_VERSION}-${PHP_VERSION}
CONTAINER_NAME=phpxmlrpc_${UBUNTU_VERSION}_${PHP_VERSION}
-p 80:80 -p 443:443 -p 8080:8080 \
--name "${CONTAINER_NAME}" \
--env CONTAINER_USER_UID=$(id -u) --env CONTAINER_USER_GID=$(id -g) \
- --env TESTS_ROOT_DIR=${CONTAINER_BUILD_DIR} \
+ --env TESTS_ROOT_DIR=${CONTAINER_WORKSPACE_DIR} \
--env HTTPSERVER=localhost \
--env HTTPURI=/demo/server/server.php \
--env HTTPSSERVER=localhost \
--env HTTPSIGNOREPEER=1 \
--env SSLVERSION=0 \
--env DEBUG=0 \
- -v "${ROOT_DIR}":"${CONTAINER_BUILD_DIR}" \
+ -v "${ROOT_DIR}":"${CONTAINER_WORKSPACE_DIR}" \
"${IMAGE_NAME}"
}
runcoverage)
# @todo clean up /tmp/phpxmlrpc and .phpunit.result.cache
if [ ! -d build ]; then mkdir build; fi
- docker exec -t "${CONTAINER_NAME}" /home/${CONTAINER_USER}/build/tests/ci/setup/setup_code_coverage.sh enable
+ docker exec -t "${CONTAINER_NAME}" "${CONTAINER_WORKSPACE_DIR}/tests/ci/setup/setup_code_coverage.sh" enable
docker exec -it "${CONTAINER_NAME}" su "${CONTAINER_USER}" -c "./vendor/bin/phpunit --coverage-html build/coverage -v tests"
- docker exec -t "${CONTAINER_NAME}" /home/${CONTAINER_USER}/build/tests/ci/setup/setup_code_coverage.sh disable
+ docker exec -t "${CONTAINER_NAME}" "${CONTAINER_WORKSPACE_DIR}/tests/ci/setup/setup_code_coverage.sh" disable
;;
runtests)