]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
script/build-with-container: skip dnf cache dir volume mounts on docker
authorJohn Mulligan <jmulligan@redhat.com>
Thu, 20 Feb 2025 14:50:49 +0000 (09:50 -0500)
committerJohn Mulligan <jmulligan@redhat.com>
Fri, 28 Feb 2025 20:16:35 +0000 (15:16 -0500)
When using docker the --volume option is not available during build
(docker [buildx] build), unlike podman. Since passing these volumes must
be conditional on them being set up I see no way to handle this short of
just disabling the option on docker. Log the fact that it's being
skipped - the only other issue is that we pointlessly set up some dirs
and the build may be a bit slower.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
src/script/build-with-container.py

index f1e5bcd77fe0f3f567a51f7cf723f2383d459008..2cd1d4d3ad1955705b8ceeac4911df5cf4d8d7a8 100755 (executable)
@@ -425,7 +425,11 @@ def build_container(ctx):
     ]
     if ctx.cli.distro:
         cmd.append(f"--build-arg=DISTRO={ctx.from_image}")
-    if ctx.dnf_cache_dir:
+    if ctx.dnf_cache_dir and "docker" in ctx.container_engine:
+        log.warning(
+            "The --volume option is not supported by docker. Skipping dnf cache dir mounts"
+        )
+    elif ctx.dnf_cache_dir:
         cmd += [
             f"--volume={ctx.dnf_cache_dir}/lib:/var/lib/dnf:Z",
             f"--volume={ctx.dnf_cache_dir}:/var/cache/dnf:Z",