summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Kachalov <rnouse@google.com>2021-01-15 16:43:23 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-01-16 22:39:35 +0000
commit49c4fdcb884057c0fc713925c8040e36fd26af8d (patch)
tree1d9e77e8895b889028d36d4607d3512a12a66c38
parente9bd99fe385b73b1607f41ff22132572e8a8264b (diff)
downloadpoky-49c4fdcb884057c0fc713925c8040e36fd26af8d.tar.gz
rootfs: add option to allow delayed postinsts on read-only rootfs
Example use case in OpenBMC: rootfs is squashfs and the system has either overlayfs for whole rootfs or for some parts (e.g. /etc). This option will allow to create migration one-shot postinsts using "pkg_postinst_ontarget_${PN}" routines defined in recipes to fix files under upper workdir in overlayfs. (From OE-Core rev: 0977204e16279b117811b5d5cdac5918287e95ac) Signed-off-by: Anton D. Kachalov <rnouse@google.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/image.bbclass2
-rw-r--r--meta/lib/oe/rootfs.py3
2 files changed, 4 insertions, 1 deletions
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 045f4494c8..3239d5cf5e 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -33,7 +33,7 @@ INHIBIT_DEFAULT_DEPS = "1"
33# IMAGE_FEATURES may contain any available package group 33# IMAGE_FEATURES may contain any available package group
34IMAGE_FEATURES ?= "" 34IMAGE_FEATURES ?= ""
35IMAGE_FEATURES[type] = "list" 35IMAGE_FEATURES[type] = "list"
36IMAGE_FEATURES[validitems] += "debug-tweaks read-only-rootfs stateless-rootfs empty-root-password allow-empty-password allow-root-login post-install-logging" 36IMAGE_FEATURES[validitems] += "debug-tweaks read-only-rootfs read-only-rootfs-delayed-postinsts stateless-rootfs empty-root-password allow-empty-password allow-root-login post-install-logging"
37 37
38# Generate companion debugfs? 38# Generate companion debugfs?
39IMAGE_GEN_DEBUGFS ?= "0" 39IMAGE_GEN_DEBUGFS ?= "0"
diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py
index 4b747dd0f4..249c685dcf 100644
--- a/meta/lib/oe/rootfs.py
+++ b/meta/lib/oe/rootfs.py
@@ -217,6 +217,9 @@ class Rootfs(object, metaclass=ABCMeta):
217 self.progress_reporter.next_stage() 217 self.progress_reporter.next_stage()
218 218
219 if bb.utils.contains("IMAGE_FEATURES", "read-only-rootfs", 219 if bb.utils.contains("IMAGE_FEATURES", "read-only-rootfs",
220 True, False, self.d) and \
221 not bb.utils.contains("IMAGE_FEATURES",
222 "read-only-rootfs-delayed-postinsts",
220 True, False, self.d): 223 True, False, self.d):
221 delayed_postinsts = self._get_delayed_postinsts() 224 delayed_postinsts = self._get_delayed_postinsts()
222 if delayed_postinsts is not None: 225 if delayed_postinsts is not None: