Add a custom recipe with custom initramfs and installers, that makes
it easy to deploy a master image for testing purposes.

We need a master image running on the target hardware, that should be a
known good build, with a set of utilities installed so that we use it
to deploy the images under test.

This core-image-testmaster recipe isn't a requirement per se, any image can
be used as long as the required conditions are met. The test code assumes:
 - that the device has a second rootfs labeled as testrootfs
 - it has a properly configured bootloader entry for the second kernel and 
rootfs
 - the master image has a /etc/masterimage file so it can differentiate between 
master
and test images
 - the master image has tar, mount, bash (basically the normal linux utilities 
not the busybox
ones)

[YOCTO #5614]

Signed-off-by: Stefan Stanacar <[email protected]>
---
 .../images/core-image-testmaster-initramfs.bb        | 20 ++++++++++++++++++++
 .../recipes-extended/images/core-image-testmaster.bb | 13 +++++++++++++
 2 files changed, 33 insertions(+)
 create mode 100644 
meta/recipes-extended/images/core-image-testmaster-initramfs.bb
 create mode 100644 meta/recipes-extended/images/core-image-testmaster.bb

diff --git a/meta/recipes-extended/images/core-image-testmaster-initramfs.bb 
b/meta/recipes-extended/images/core-image-testmaster-initramfs.bb
new file mode 100644
index 0000000..f4de80a
--- /dev/null
+++ b/meta/recipes-extended/images/core-image-testmaster-initramfs.bb
@@ -0,0 +1,20 @@
+DESCRIPTION = "Small image capable of booting a device. The kernel includes \
+the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \
+first 'init' program more efficiently."
+
+PACKAGE_INSTALL = "initramfs-live-boot initramfs-live-install-testfs 
initramfs-live-install-efi-testfs busybox udev base-passwd 
${ROOTFS_BOOTSTRAP_INSTALL}"
+
+# Do not pollute the initrd image with rootfs features
+IMAGE_FEATURES = ""
+
+export IMAGE_BASENAME = "core-image-testmaster-initramfs"
+IMAGE_LINGUAS = ""
+
+LICENSE = "MIT"
+
+IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}"
+inherit core-image
+
+IMAGE_ROOTFS_SIZE = "8192"
+
+BAD_RECOMMENDATIONS += "busybox-syslog"
diff --git a/meta/recipes-extended/images/core-image-testmaster.bb 
b/meta/recipes-extended/images/core-image-testmaster.bb
new file mode 100644
index 0000000..7a564d4
--- /dev/null
+++ b/meta/recipes-extended/images/core-image-testmaster.bb
@@ -0,0 +1,13 @@
+DESCRIPTION = "A master image to be deployed on a target useful for testing 
other images"
+
+IMAGE_FEATURES += "ssh-server-openssh package-management"
+
+inherit core-image
+
+IMAGE_INSTALL += "\
+    bash coreutils util-linux tar gzip kmod \
+    python-modules python-misc \
+    e2fsprogs e2fsprogs-mke2fs parted \
+    "
+INITRD_IMAGE = "core-image-testmaster-initramfs"
+
-- 
1.8.5.3

-- 
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to