]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
script/build-with-container: fix rpm build step when using an overlay
authorJohn Mulligan <jmulligan@redhat.com>
Thu, 8 May 2025 15:21:32 +0000 (11:21 -0400)
committerJohn Mulligan <jmulligan@redhat.com>
Thu, 12 Jun 2025 13:37:00 +0000 (09:37 -0400)
Signed-off-by: John Mulligan <jmulligan@redhat.com>
src/script/build-with-container.py

index 270f0a20558ffec8137302240959df16392bb90f..0f925f1234adc89275a63a59d1f81980647f0469 100755 (executable)
@@ -681,6 +681,11 @@ def bc_make_source_rpm(ctx):
         _run(cmd, check=True, ctx=ctx)
 
 
+def _glob_search(ctx, pattern):
+    overlay = ctx.overlay()
+    return glob.glob(pattern, root_dir=overlay.upper if overlay else None)
+
+
 @Builder.set(Steps.RPM)
 def bc_build_rpm(ctx):
     """Build RPMs from SRPM."""
@@ -701,7 +706,7 @@ def bc_build_rpm(ctx):
                 ctx.cli.ceph_version
             )
             srpm_glob = f"ceph-{srpm_version}.*.src.rpm"
-    paths = glob.glob(srpm_glob)
+    paths = _glob_search(ctx, srpm_glob)
     if len(paths) > 1:
         raise RuntimeError(
             "too many matching source rpms"
@@ -711,7 +716,7 @@ def bc_build_rpm(ctx):
     if not paths:
         # no matches. build a new srpm
         ctx.build.wants(Steps.SOURCE_RPM, ctx)
-        paths = glob.glob(srpm_glob)
+        paths = _glob_search(ctx, srpm_glob)
         assert paths
     srpm_path = pathlib.Path(ctx.cli.homedir) / paths[0]
     topdir = pathlib.Path(ctx.cli.homedir) / "rpmbuild"