summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton D. Kachalov <gmouse@google.com>2021-03-21 11:26:16 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-03-23 22:51:25 +0000
commitc3ec66dfb50c7fc0ab3b5bf6e0825ed3b1ca5971 (patch)
tree6795013b785d76d1711897c70a6bd0e8aa575d1a
parent84e4c97835f58d49031784f2050cd5b149074633 (diff)
downloadpoky-contrib-c3ec66dfb50c7fc0ab3b5bf6e0825ed3b1ca5971.tar.gz
poky-contrib-c3ec66dfb50c7fc0ab3b5bf6e0825ed3b1ca5971.tar.bz2
poky-contrib-c3ec66dfb50c7fc0ab3b5bf6e0825ed3b1ca5971.zip
run-postinsts: do not remove postinsts directory.
When running on the systems having read-only rootfs backed by overlayfs, removing the whole directory lead to create a special char device file on the upperdir to reflect directory's removal. Once it is required to upgrade the whole read-only image that might contain new postinsts scripts, it will be impossible to run such scripts with a "deletion mark" file on the overlayfs -- the whole directory will be marked as deleted regardless new files in it. (From OE-Core rev: 1a27b62b225ffeecec47c249a0b86cc54d775add) Signed-off-by: Anton D. Kachalov <gmouse@google.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rwxr-xr-xmeta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts10
1 files changed, 4 insertions, 6 deletions
diff --git a/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts b/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts
index f84a7e18c8..95dccb9cae 100755
--- a/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts
+++ b/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts
@@ -72,12 +72,12 @@ exec_postinst_scriptlets() {
else
echo "ERROR: postinst $i failed."
[ "$POSTINST_LOGGING" = "1" ] && eval echo "ERROR: postinst $i failed." $append_log
- remove_pi_dir=0
+ remove_rcsd_link=0
fi
done
}
-remove_pi_dir=1
+remove_rcsd_link=1
if $pm_installed; then
case $pm in
"ipk")
@@ -92,9 +92,7 @@ else
exec_postinst_scriptlets
fi
-# since all postinstalls executed successfully, remove the postinstalls directory
-# and the rcS.d link
-if [ $remove_pi_dir = 1 ]; then
- rm -rf $pi_dir
+# since all postinstalls executed successfully, remove the rcS.d link
+if [ $remove_rcsd_link = 1 ]; then
remove_rcsd_link
fi