ubuntu-signed element would install 'linux-signed-image-generic' that provides signed kernel that can be used for deploy in UEFI secure boot mode. Package 'linux-signed-image-generic' ships signed kernel with extension '.efi.signed' (Ex. '/boot/vmlinuz-3.13.0-49-generic.efi.signed'). The kernel modules directory for signed kernel and unsigned kernel is same. It is without 'efi.signed' extension to its name. This is different from normal practice of directory naming in '/lib/modules' (Ex. For signed kernel 'vmlinuz-3.13.0-49-generic.efi.signed', modules directory is '/lib/modules/3.13.0-49-generic'). This needed some changes in '/lib/ramdisk-functions' and 'ramdisk' element to copy kernel modules. The signed kernel package contains both signed and unsigned kernel. The unsiged kernel is without extension '.efi.signed' (Ex. '/boot/vmlinuz-3.13.0-49-generic'). This required change into '/lib/img-functions' and 'baremetal' element to pick up signed kernel version when this element is used. Closes-Bug: 1443076 Change-Id: I60061cbea847b47fa752b9463cfd387e8e7f0635
ramdisk
This is the ramdisk element.
Almost any user building a ramdisk will want to include this in their build, as it triggers many of the vital functionality from the basic diskimage-builder libraries (such as init script aggregation, busybox population, etc).
An example of when one might want to use this toolchain to build a ramdisk would be the initial deployment of baremetal nodes in a TripleO setup. Various tools and scripts need to be injected into a ramdisk that will fetch and apply a machine image to local disks. That tooling/scripting customisation can be easily applied in a repeatable and automatable way, using this element.
NOTE: ramdisks require 1GB minimum memory on the machines they are booting.
See the top-level README.md of the project, for more information about the mechanisms available to a ramdisk element.