A fstab replacement method change to build container guest 05/28905/6
authorNaoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
Thu, 18 May 2023 21:07:28 +0000 (06:07 +0900)
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Mon, 29 May 2023 13:35:09 +0000 (13:35 +0000)
In https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl-demo/+/28690
review, I got a request for method change request.  Existing
method use bbappend for base files.
New method use ROOTFS_POSTPROCESS_COMMAND.

Bug-AGL: SPEC-4803

Change-Id: Ie058ef55f7dfeae5d651b46d5ff731d1a2bebc19
Signed-off-by: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
recipes-core/base-files-guest/base-files-guest-fstab/fstab [moved from recipes-core/base-files/agl-container-guest/fstab with 85% similarity]
recipes-core/base-files-guest/base-files-guest-fstab_1.0.0.bb [new file with mode: 0644]
recipes-core/base-files/base-files_%.bbappend [deleted file]
recipes-core/base-files/base-files_agl-container-guest-demo.inc [deleted file]
recipes-platform/images/agl-demo-container-guest-integration.inc [new file with mode: 0644]
recipes-platform/images/agl-ivi-demo-platform-flutter.bb
recipes-platform/images/agl-ivi-demo-platform-html5.bb
recipes-platform/images/agl-ivi-demo-platform.bb

@@ -1,3 +1,3 @@
 # Reference fstab for container guest
-devpts               /dev/pts             devpts     mode=0620,ptmxmode=0666,gid=5       0  0
+devpts               /dev/pts             devpts     mode=0620,ptmxmode=0666,gid=5      0  0
 tmpfs                /var/volatile        tmpfs      defaults              0  0
diff --git a/recipes-core/base-files-guest/base-files-guest-fstab_1.0.0.bb b/recipes-core/base-files-guest/base-files-guest-fstab_1.0.0.bb
new file mode 100644 (file)
index 0000000..ad3e6e9
--- /dev/null
@@ -0,0 +1,25 @@
+SUMMARY = "Container guest extention for fstab"
+DESCRIPTION = "The base-files-guest-fstab package creates the fstab for container guest integration."
+SECTION = "base"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
+
+SRC_URI = " \
+    file://fstab \
+"
+S = "${WORKDIR}"
+
+#INHIBIT_DEFAULT_DEPS = "1"
+
+do_install () {
+       install -m 0755 -d ${D}${sysconfdir}
+
+       install -m 0644 ${WORKDIR}/fstab ${D}${sysconfdir}/fstab-guest
+}
+
+PACKAGES = "${PN}"
+FILES:${PN} = "${sysconfdir}/fstab-guest"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+
+CONFFILES:${PN} = "${sysconfdir}/fstab-guest"
diff --git a/recipes-core/base-files/base-files_%.bbappend b/recipes-core/base-files/base-files_%.bbappend
deleted file mode 100644 (file)
index aeddb7c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-require ${@bb.utils.contains('AGL_FEATURES', 'agl-container-guest-demo', 'base-files_agl-container-guest-demo.inc', '', d)}
diff --git a/recipes-core/base-files/base-files_agl-container-guest-demo.inc b/recipes-core/base-files/base-files_agl-container-guest-demo.inc
deleted file mode 100644 (file)
index dfce6ce..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-FILESEXTRAPATHS:prepend := "${THISDIR}/agl-container-guest:"
-
diff --git a/recipes-platform/images/agl-demo-container-guest-integration.inc b/recipes-platform/images/agl-demo-container-guest-integration.inc
new file mode 100644 (file)
index 0000000..f835761
--- /dev/null
@@ -0,0 +1,18 @@
+IMAGE_CONTAINER_GUEST_APPEND = " base-files-guest-fstab"
+IMAGE_INSTALL:append = " \
+    ${@bb.utils.contains('AGL_FEATURES', 'agl-container-guest-demo', '${IMAGE_CONTAINER_GUEST_APPEND}', '', d)} \
+"
+
+fixupfstab_for_container_guest_images() {
+    rm -f  ${IMAGE_ROOTFS}/${sysconfdir}/fstab
+    ln -s fstab-guest ${IMAGE_ROOTFS}/${sysconfdir}/fstab
+}
+
+rmboot_for_container_guest_images() {
+    rm -rf ${IMAGE_ROOTFS}/boot
+}
+
+ROOTFS_POSTPROCESS_COMMAND += " \
+    ${@bb.utils.contains('AGL_FEATURES', 'agl-container-guest-demo', 'fixupfstab_for_container_guest_images;', '', d)} \
+    ${@bb.utils.contains('AGL_FEATURES', 'agl-container-guest-demo', 'rmboot_for_container_guest_images;', '', d)} \
+"
index 336ad3b..f385c1e 100644 (file)
@@ -3,6 +3,7 @@ require agl-image-ivi.bb
 DESCRIPTION = "AGL Flutter based Demo Platform image"
 
 require agl-demo-features.inc
+require agl-demo-container-guest-integration.inc
 
 # add packages for demo platform (include demo apps) here
 IMAGE_INSTALL:append = " \
index 805e239..dc82ce4 100644 (file)
@@ -3,6 +3,8 @@ require agl-image-ivi.bb
 SUMMARY = "DEMO platform of AGL HTML5 profile"
 DESCRIPTION = "Contains the web runtime and sample web apps"
 
+require agl-demo-container-guest-integration.inc
+
 # add packages for demo platform (include demo apps) here
 IMAGE_INSTALL:append = " \
     packagegroup-agl-demo-platform-html5 \
index e82a474..f5fcad9 100644 (file)
@@ -4,6 +4,7 @@ DESCRIPTION = "AGL Demo Platform image currently contains a simple HMI and \
 demos."
 
 require agl-demo-features.inc
+require agl-demo-container-guest-integration.inc
 
 # add packages for demo platform (include demo apps) here
 IMAGE_INSTALL:append = " \