diff options
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/rootfs-postcommands.bbclass | 13 | ||||
-rw-r--r-- | meta/files/overlayfs-create-dirs.service.in | 3 | ||||
-rw-r--r-- | meta/files/overlayfs-create-dirs.sh | 8 |
3 files changed, 21 insertions, 3 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" 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) +} diff --git a/meta/files/overlayfs-create-dirs.service.in b/meta/files/overlayfs-create-dirs.service.in index 61b2b9321b..c949a6dc73 100644 --- a/meta/files/overlayfs-create-dirs.service.in +++ b/meta/files/overlayfs-create-dirs.service.in @@ -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 diff --git a/meta/files/overlayfs-create-dirs.sh b/meta/files/overlayfs-create-dirs.sh new file mode 100644 index 0000000000..06c7587a6b --- /dev/null +++ b/meta/files/overlayfs-create-dirs.sh @@ -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} |