]> git.ipfire.org Git - thirdparty/mkosi.git/commitdiff
Don't resolve paths in two cases
authorDaan De Meyer <daan.j.demeyer@gmail.com>
Sun, 6 Aug 2023 18:39:01 +0000 (20:39 +0200)
committerDaan De Meyer <daan.j.demeyer@gmail.com>
Sun, 6 Aug 2023 18:39:01 +0000 (20:39 +0200)
- Target paths should not be resolved
- When checking paths for the paths logic, let's not resolve either
  and leave that to the parser implementation itself

mkosi/config.py

index a3e525d0d6467e890838732a3f18a205037c392b..3445704737ec7bd9289b1d12a01dc9e2eefae02b 100644 (file)
@@ -161,7 +161,7 @@ def make_source_target_paths_parser(absolute: bool = True) -> Callable[[str], tu
         src, sep, target = value.partition(':')
         src_path = parse_path(src, required=False)
         if sep:
-            target_path = parse_path(target, required=False, absolute=False, expanduser=False)
+            target_path = parse_path(target, required=False, absolute=False, resolve=False, expanduser=False)
             if absolute and not target_path.is_absolute():
                 die("Target path must be absolute")
         else:
@@ -1579,7 +1579,15 @@ class MkosiConfigParser:
 
             for s in self.SETTINGS:
                 for f in s.paths:
-                    p = parse_path(f, secret=s.path_secret, required=False, absolute=False, expanduser=False, expandvars=False)
+                    p = parse_path(
+                        f,
+                        secret=s.path_secret,
+                        required=False,
+                        absolute=False,
+                        resolve=False,
+                        expanduser=False,
+                        expandvars=False,
+                    )
                     if p.exists():
                         setattr(namespace, s.dest,
                                 s.parse(s.dest, p.read_text() if s.path_read_text else f, namespace))