]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
tests/docker: expose $HOME/.cache/qemu as docker volume
authorAlex Bennée <alex.bennee@linaro.org>
Tue, 3 Jun 2025 11:01:48 +0000 (12:01 +0100)
committerAlex Bennée <alex.bennee@linaro.org>
Sat, 7 Jun 2025 14:15:30 +0000 (15:15 +0100)
If you want to run functional tests we should share .cache/qemu so we
don't force containers to continually re-download images. We also move
ccache to use this shared area.

Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-ID: <20250603110204.838117-2-alex.bennee@linaro.org>

tests/docker/Makefile.include

index fa1cbb67264be0c688be67ea8c4b62535131a095..3959d8a028a20b8ce4707eea42b42a9d1819cce9 100644 (file)
@@ -185,8 +185,10 @@ docker:
 
 docker-help: docker
 
+# Where QEMU caches build artefacts
+DOCKER_QEMU_CACHE_DIR := $$HOME/.cache/qemu
 # Use a global constant ccache directory to speed up repetitive builds
-DOCKER_CCACHE_DIR := $$HOME/.cache/qemu-docker-ccache
+DOCKER_QEMU_CCACHE_DIR := DOCKER_QEMU_CACHE_DIR/docker-ccache
 
 # This rule if for directly running against an arbitrary docker target.
 # It is called by the expanded docker targets (e.g. make
@@ -195,7 +197,7 @@ DOCKER_CCACHE_DIR := $$HOME/.cache/qemu-docker-ccache
 # For example: make docker-run TEST="test-quick" IMAGE="debian:arm64" EXECUTABLE=./aarch64-linux-user/qemu-aarch64
 #
 docker-run: docker-qemu-src
-       @mkdir -p "$(DOCKER_CCACHE_DIR)"
+       @mkdir -p "$(DOCKER_QEMU_CCACHE_DIR)"
        @if test -z "$(IMAGE)" || test -z "$(TEST)"; \
                then echo "Invalid target $(IMAGE)/$(TEST)"; exit 1; \
        fi
@@ -222,8 +224,8 @@ docker-run: docker-qemu-src
                        -e V=$V -e J=$J -e DEBUG=$(DEBUG)               \
                        -e SHOW_ENV=$(SHOW_ENV)                         \
                        $(if $(NOUSER),,                                \
-                               -e CCACHE_DIR=/var/tmp/ccache           \
-                               -v $(DOCKER_CCACHE_DIR):/var/tmp/ccache:z \
+                               -v $(DOCKER_QEMU_CACHE_DIR):$(DOCKER_QEMU_CACHE_DIR)    \
+                               -e CCACHE_DIR=$(DOCKER_QEMU_CCACHE_DIR) \
                        )                                               \
                        -v $$(readlink -e $(DOCKER_SRC_COPY)):/var/tmp/qemu:z$(COMMA)ro \
                        $(IMAGE)                                        \