mirror of
https://git.yoctoproject.org/poky
synced 2026-01-29 21:08:42 +01:00
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>
This commit is contained in:
committed by
Richard Purdie
parent
48bb4f6628
commit
5fc131c5a9
@@ -39,7 +39,7 @@ ROOTFS_POSTPROCESS_COMMAND += '${@bb.utils.contains("DISTRO_FEATURES", "systemd"
|
||||
|
||||
ROOTFS_POSTPROCESS_COMMAND += 'empty_var_volatile;'
|
||||
|
||||
ROOTFS_POSTPROCESS_COMMAND += '${@bb.utils.contains("DISTRO_FEATURES", "overlayfs", "overlayfs_qa_check;", "", d)}'
|
||||
ROOTFS_POSTPROCESS_COMMAND += '${@bb.utils.contains("DISTRO_FEATURES", "overlayfs", "overlayfs_qa_check; overlayfs_postprocess;", "", d)}'
|
||||
|
||||
inherit image-artifact-names
|
||||
|
||||
@@ -422,3 +422,14 @@ python overlayfs_qa_check() {
|
||||
if not allUnitExist:
|
||||
bb.fatal('Not all mount paths and units are installed in the image')
|
||||
}
|
||||
|
||||
python overlayfs_postprocess() {
|
||||
import shutil
|
||||
|
||||
# install helper script
|
||||
helperScriptName = "overlayfs-create-dirs.sh"
|
||||
helperScriptSource = oe.path.join(d.getVar("COREBASE"), "meta/files", helperScriptName)
|
||||
helperScriptDest = oe.path.join(d.getVar("IMAGE_ROOTFS"), "/usr/sbin/", helperScriptName)
|
||||
shutil.copyfile(helperScriptSource, helperScriptDest)
|
||||
os.chmod(helperScriptDest, 0o755)
|
||||
}
|
||||
|
||||
@@ -6,8 +6,7 @@ DefaultDependencies=no
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=mkdir -p {DATA_MOUNT_POINT}/upper{LOWERDIR}
|
||||
ExecStart=mkdir -p {DATA_MOUNT_POINT}/workdir{LOWERDIR}
|
||||
ExecStart=/usr/sbin/overlayfs-create-dirs.sh {LOWERDIR} {DATA_MOUNT_POINT}
|
||||
RemainAfterExit=true
|
||||
StandardOutput=journal
|
||||
|
||||
|
||||
8
meta/files/overlayfs-create-dirs.sh
Normal file
8
meta/files/overlayfs-create-dirs.sh
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
# This script is intended to be used sorely by overlayfs-create-dirs.service
|
||||
# Usage: overlayfs-create-dirs.sh <LOWERDIR> <DATA_MOUNT_POINT>
|
||||
|
||||
lowerdir=$1
|
||||
datamountpoint=$2
|
||||
mkdir -p ${datamountpoint}/upper${lowerdir}
|
||||
mkdir -p ${datamountpoint}/workdir${lowerdir}
|
||||
Reference in New Issue
Block a user