]> git.ipfire.org Git - thirdparty/mkosi.git/commitdiff
Always overwrite the basename symlink to point to the newest version 1583/head
authorCornelius Hoffmann <coding@hoffmn.de>
Fri, 26 May 2023 09:37:41 +0000 (11:37 +0200)
committerCornelius Hoffmann <coding@hoffmn.de>
Fri, 26 May 2023 10:05:14 +0000 (12:05 +0200)
Having the symlink point to the oldest image is somewhat counterintuitive

mkosi/__init__.py

index f8d2a4072e3ae656aa7cc3104521cda45b31c327..ef65abe4170a88d4310733b02f18c2af0ba01861 100644 (file)
@@ -1728,9 +1728,11 @@ def build_image(uid: int, gid: int, args: MkosiArgs, config: MkosiConfig) -> Non
 
             shutil.move(f, state.config.output_dir)
 
-        if not state.config.output_dir.joinpath(state.config.output).exists():
-            state.config.output_dir.joinpath(state.config.output).symlink_to(state.config.output_with_compression)
-            os.chown(state.config.output_dir.joinpath(state.config.output), uid, gid, follow_symlinks=False)
+        output_base = state.config.output_dir.joinpath(state.config.output)
+        if not output_base.exists() or output_base.is_symlink():
+            output_base.unlink(missing_ok=True)
+            output_base.symlink_to(state.config.output_with_compression)
+            os.chown(output_base, uid, gid, follow_symlinks=False)
 
     print_output_size(config.output_dir / config.output)