summaryrefslogtreecommitdiffstats
path: root/meta/classes/rootfs-postcommands.bbclass
diff options
context:
space:
mode:
authorVyacheslav Yurkov <v.yurkov@precitec.de>2022-06-01 21:30:10 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-06-04 11:28:23 +0100
commit5fc131c5a91b056a173eab4cd04148fdfc297b8c (patch)
treecd7f97b5be4e991455819d69001e10f7ddefdc4d /meta/classes/rootfs-postcommands.bbclass
parent48bb4f6628e5419e54e18c8204961633dbad265b (diff)
downloadpoky-5fc131c5a91b056a173eab4cd04148fdfc297b8c.tar.gz
files: rootfs-postcommands: move helper commands to script
OverlayFS systemd helper unit might require more pre-processing commands. It gets more complicated to embed them in a unit file, because systemd shell subset is limited and might require additional escaping. Move the command to a separate script, thus simplifying systemd unit. (From OE-Core rev: 86a457016e7f3fc7acacf86cd87f5d8d882132dd) Signed-off-by: Vyacheslav Yurkov <v.yurkov@precitec.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/rootfs-postcommands.bbclass')
-rw-r--r--meta/classes/rootfs-postcommands.bbclass13
1 files changed, 12 insertions, 1 deletions
diff --git a/meta/classes/rootfs-postcommands.bbclass b/meta/classes/rootfs-postcommands.bbclass
index d302c23cf4..3f9fdb602d 100644
--- a/meta/classes/rootfs-postcommands.bbclass
+++ b/meta/classes/rootfs-postcommands.bbclass
@@ -39,7 +39,7 @@ ROOTFS_POSTPROCESS_COMMAND += '${@bb.utils.contains("DISTRO_FEATURES", "systemd"
39 39
40ROOTFS_POSTPROCESS_COMMAND += 'empty_var_volatile;' 40ROOTFS_POSTPROCESS_COMMAND += 'empty_var_volatile;'
41 41
42ROOTFS_POSTPROCESS_COMMAND += '${@bb.utils.contains("DISTRO_FEATURES", "overlayfs", "overlayfs_qa_check;", "", d)}' 42ROOTFS_POSTPROCESS_COMMAND += '${@bb.utils.contains("DISTRO_FEATURES", "overlayfs", "overlayfs_qa_check; overlayfs_postprocess;", "", d)}'
43 43
44inherit image-artifact-names 44inherit image-artifact-names
45 45
@@ -422,3 +422,14 @@ python overlayfs_qa_check() {
422 if not allUnitExist: 422 if not allUnitExist:
423 bb.fatal('Not all mount paths and units are installed in the image') 423 bb.fatal('Not all mount paths and units are installed in the image')
424} 424}
425
426python overlayfs_postprocess() {
427 import shutil
428
429 # install helper script
430 helperScriptName = "overlayfs-create-dirs.sh"
431 helperScriptSource = oe.path.join(d.getVar("COREBASE"), "meta/files", helperScriptName)
432 helperScriptDest = oe.path.join(d.getVar("IMAGE_ROOTFS"), "/usr/sbin/", helperScriptName)
433 shutil.copyfile(helperScriptSource, helperScriptDest)
434 os.chmod(helperScriptDest, 0o755)
435}