mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-22 00:06:12 -05:00
.ci/run_tests.sh: fix podman run of container-based testing (#57688)
Closes GH-57724 --------- Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
This commit is contained in:
parent
605e00a857
commit
614ebf5f6b
@ -2,13 +2,20 @@
|
||||
|
||||
set -e
|
||||
|
||||
DOCKER=$(command -v podman docker | head -1)
|
||||
|
||||
# check for docker availability
|
||||
command -v docker > /dev/null || {
|
||||
echo "Please install docker" >&2
|
||||
test -n "${DOCKER}" || {
|
||||
echo "Please install podman or docker" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
IMAGE_BUILD_DEPS=qgis/qgis3-build-deps:latest
|
||||
DOCKER_COMPOSE=$(command -v podman-compose docker-compose | head -1)
|
||||
test -n "${DOCKER_COMPOSE}" || {
|
||||
DOCKER_COMPOSE="${DOCKER} compose" # TODO: check if supported
|
||||
}
|
||||
|
||||
IMAGE_BUILD_DEPS=docker.io/qgis/qgis3-build-deps:latest
|
||||
UPDATE_IMAGES=yes
|
||||
INTERACTIVE=no
|
||||
FORCE_REBUILD=no
|
||||
@ -70,22 +77,25 @@ echo "--=[ QGIS_COMMON_GIT_DIR is $QGIS_COMMON_GIT_DIR"
|
||||
# Make qgis3-build-deps-binary-image available, building it if needed
|
||||
#
|
||||
|
||||
if test "$(docker images -q ${IMAGE_BUILD_DEPS})" = ""; then
|
||||
if test "$(${DOCKER} images -q ${IMAGE_BUILD_DEPS})" = ""; then
|
||||
echo "--=[ Fetching qgis build dependencies image"
|
||||
docker pull ${IMAGE_BUILD_DEPS}
|
||||
${DOCKER} pull ${IMAGE_BUILD_DEPS}
|
||||
elif test "${UPDATE_IMAGES}" = "yes"; then
|
||||
echo "--=[ Updating qgis build dependencies image"
|
||||
docker pull ${IMAGE_BUILD_DEPS}
|
||||
${DOCKER} pull ${IMAGE_BUILD_DEPS}
|
||||
fi
|
||||
|
||||
if test -d ${QGIS_BUILDDIR} -a "${FORCE_REBUILD}" = "no"; then
|
||||
echo "--=[ Testing against pre-existing build directory ${QGIS_BUILDDIR}. To rebuild use --force-rebuild or move it away"
|
||||
else
|
||||
echo "--=[ Building qgis inside the dependencies container"
|
||||
docker run -t --name qgis_container \
|
||||
VOLUMES="-v ${QGIS_WORKSPACE}:${QGIS_WORKSPACE}:z"
|
||||
if test "${QGIS_WORKSPACE}" != "${QGIS_COMMON_GIT_DIR}"; then
|
||||
VOLUMES="${VOLUMES} -v ${QGIS_COMMON_GIT_DIR}:${QGIS_COMMON_GIT_DIR}:z"
|
||||
fi
|
||||
${DOCKER} run -t --name qgis_container \
|
||||
--rm \
|
||||
-v ${QGIS_WORKSPACE}:${QGIS_WORKSPACE} \
|
||||
-v ${QGIS_COMMON_GIT_DIR}:${QGIS_COMMON_GIT_DIR} \
|
||||
${VOLUMES} \
|
||||
--env-file .docker/docker-variables.env \
|
||||
--env PUSH_TO_CDASH=false \
|
||||
--env WITH_QT5=true \
|
||||
@ -105,9 +115,9 @@ else
|
||||
}
|
||||
fi
|
||||
|
||||
if test "$(docker images -q qgis3-build-deps-binary-image)" = ""; then
|
||||
if test "$(${DOCKER} images -q qgis3-build-deps-binary-image)" = ""; then
|
||||
echo "--=[ Tagging qgis build dependencies image as required by .docker/docker-compose-testing.yml"
|
||||
docker tag ${IMAGE_BUILD_DEPS} qgis3-build-deps-binary-image
|
||||
${DOCKER} tag ${IMAGE_BUILD_DEPS} qgis3-build-deps-binary-image
|
||||
fi
|
||||
|
||||
if test "${INTERACTIVE}" = "no"; then
|
||||
@ -125,7 +135,7 @@ mkdir -p /tmp/minio_tests/test-bucket && chmod -R 777 /tmp/minio_tests
|
||||
# Create an empty webdav folder with appropriate permissions so www user can write inside it
|
||||
mkdir -p /tmp/webdav_tests && chmod 777 /tmp/webdav_tests
|
||||
|
||||
docker compose \
|
||||
${DOCKER_COMPOSE} \
|
||||
-f .docker/docker-compose-testing.yml \
|
||||
run \
|
||||
-w "${QGIS_WORKSPACE_MOUNTPOINT}" \
|
||||
|
Loading…
x
Reference in New Issue
Block a user