Plugin “kern-hv”
Note
Description of a plugin for the Berrymill framework. This plugin might be not available in your particular installation.
As any other plugin, the specific section starts from the same id
of the plugin, namely kern-hv.
Top-level configuration sections
Following is the list of top-level configuration items:
output-dirThe
output-diris an optional item and defines subdirectory name, located in the same directory asproject.conffile.Default value is
buildand refers that during the image build will be created a subdirectorybuildin the same place whereproject.confis.output-imageThe
output-imageis a filename of the resulting image, which will be placed in theoutput-dirdestination alongside with other artefacts.hypervisorThis section is for hypervisor data configuration. It requires many different items, such as bootstrap image, the device tree files, Lua scripts and other artifacts.
image-mapSection
image-mapis a technically any key to any value, and only defines symlinks to the already known image, those are scanned prior in the-generalsection. For example, if the hypervisor is configured to writeexample.rawimage and in-generalsection is found a system, likedemo-image.aarch64-1.0.raw, then in order to hypervisor pick it up, it should be configured like so:image-map: example.raw: demo-image.aarch64-1.0.raw
In this case,
example.rawwill be just a symlink to thedemo-image.aarch64-1.0.rawfile in temporary build directory.
The hypervisor section
This option has four sections that puts together the main hypervisor configuration.
bootstrap-imageAn original, default bootstrap U-Boot image, which is going to be repackaged with your configuration.
device-treeDirectory where all device tree and metadata is located.
hv-confPath to the directory, containing configuration in Lua scripts.
hv-conf-entryName of the main entry in the metadata dependencies file.
The part-data section
This is a key/value mapping and should correspond to the configuration in Lua scripts. Please refer to the Kernkonzept configuration documentation to know more details.
Those files are usually used for VM partitions, those can be
many. Same as image-map, the part-data option refers to the
following schema:
desired_filename: file://path/to/an/actual/filename
Usually the hypervisor expects Linux kernel and initrd file per a
partition. So in the Lua scripts one would usually configure those
files before starting a VM, such as my_ramdisk and
my_kernel. Therefore the configuration would look like this:
part-data:
my_ramdisk: file:///path/to/my-image-1.0.initrd
my_kernel: file:///path/to/my-image-1.0.kernel
The image-layout section
Note
Configuration of this section is not covered in the current document.
This option refers to the separate embdgen library and has its own
documentation, available online. Either refer to it or read embdgen manpage.