From bc883e49912b8d0cdc9ea403e85f2cb3198b48ff Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Tue, 2 Jan 2024 17:22:14 +0000 Subject: rootfs-postcommands: Try and improve ordering constraints The current code is in race to see who can set things last. This isn't scalable or sustainable and problemtic in the face of inherit ordering changes. Move the ordering issue into the actual code execution, which isn't ideal but the best of several bad options and at least lets us drop the anonymous python. (From OE-Core rev: 0ffff2c1f80a9b79b133d787764bab164d9abd70) Signed-off-by: Richard Purdie --- meta/lib/oe/rootfs.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'meta/lib/oe') diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py index 3f27164536..8cd48f9450 100644 --- a/meta/lib/oe/rootfs.py +++ b/meta/lib/oe/rootfs.py @@ -194,6 +194,18 @@ class Rootfs(object, metaclass=ABCMeta): post_process_cmds = self.d.getVar("ROOTFS_POSTPROCESS_COMMAND") rootfs_post_install_cmds = self.d.getVar('ROOTFS_POSTINSTALL_COMMAND') + def make_last(command, commands): + commands = commands.split() + if command in commands: + commands.remove(command) + commands.append(command) + return "".join(commands) + + # We want this to run as late as possible, in particular after + # systemd_sysusers_create and set_user_group. Using :append is not enough + make_last("tidy_shadowutils_files", post_process_cmds) + make_last("rootfs_reproducible", post_process_cmds) + execute_pre_post_process(self.d, pre_process_cmds) if self.progress_reporter: -- cgit v1.2.3-54-g00ecf