pub struct BuildIgvmCliCustomizations {Show 19 fields
pub build_label: Option<String>,
pub override_kernel_pkg: Option<KernelPackageKindCli>,
pub override_openvmm_hcl_feature: Vec<String>,
pub override_arch: Option<BuildIgvmArch>,
pub override_manifest: Option<PathBuf>,
pub with_perf_tools: bool,
pub with_debuginfo: bool,
pub custom_openvmm_hcl: Option<PathBuf>,
pub custom_openhcl_boot: Option<PathBuf>,
pub custom_uefi: Option<PathBuf>,
pub custom_kernel: Option<PathBuf>,
pub custom_kernel_modules: Option<PathBuf>,
pub custom_vtl0_kernel: Option<PathBuf>,
pub custom_layer: Vec<PathBuf>,
pub custom_directory: Vec<PathBuf>,
pub custom_extra_rootfs: Vec<PathBuf>,
pub with_sidecar: bool,
pub custom_sidecar: Option<PathBuf>,
pub max_trace_level: Option<MaxTraceLevelCli>,
}Fields§
§build_label: Option<String>Set a custom label for this build-igvm invocation. If no label is
provided, customized IGVM files will be output with the label
{base_recipe_name}-custom
override_kernel_pkg: Option<KernelPackageKindCli>Override which kernel package to use.
override_openvmm_hcl_feature: Vec<String>Pass additional features when building openmm_hcl
override_arch: Option<BuildIgvmArch>Override architecture used when building. You probably don’t want this - prefer changing the base recipe to something more appropriate.
override_manifest: Option<PathBuf>Override the json manifest passed to igvmfilegen, none means the debug/release manifest from the base recipe will be used.
with_perf_tools: boolEnsure perf tools are included in the release initrd.
Ensures that openvmm_hcl is not stripped, so that perf tools work
correctly, and requires that the file be built in --release mode, so
that perf numbers are more representative of production binaries.
with_debuginfo: boolPreserve debuginfo in the openvmm_hcl binary in the IGVM file.
This increases the VTL2 memory requirements significantly, and will
likely require passing a --override-manifest to compensate.
custom_openvmm_hcl: Option<PathBuf>Path to custom openvmm_hcl binary, none means openhcl will be built.
custom_openhcl_boot: Option<PathBuf>Path to custom openhcl_boot, none means the boot loader will be built.
custom_uefi: Option<PathBuf>Path to custom uefi MSVM.fd, none means the packaged uefi will be used.
custom_kernel: Option<PathBuf>Path to custom kernel vmlinux / Image, none means the packaged kernel will be used.
custom_kernel_modules: Option<PathBuf>Path to kernel modules, none means the packaged kernel modules will be used.
custom_vtl0_kernel: Option<PathBuf>Path to custom vtl0 linux kernel to use if the manifest includes a direct-boot linux VM.
If not specified, the packaged openvmm test linux direct kernel is used.
custom_layer: Vec<PathBuf>Additional layers to be included in the initrd
custom_directory: Vec<PathBuf>Additional directories to be included in the initrd
custom_extra_rootfs: Vec<PathBuf>Additional rootfs.config files to use to generate the initrd
with_sidecar: bool(experimental) Include the AP kernel in the IGVM file
custom_sidecar: Option<PathBuf>(experimental) Path to custom sidecar kernel binary, none means sidecar will be built.
max_trace_level: Option<MaxTraceLevelCli>The maximum trace level to set for the openvmm_hcl build. Defaults
to trace for debug builds and debug for release builds.
Trait Implementations§
Source§impl Args for BuildIgvmCliCustomizations
impl Args for BuildIgvmCliCustomizations
Source§fn group_id() -> Option<Id>
fn group_id() -> Option<Id>
ArgGroup::id][crate::ArgGroup::id] for this set of argumentsSource§fn augment_args<'b>(__clap_app: Command) -> Command
fn augment_args<'b>(__clap_app: Command) -> Command
Source§fn augment_args_for_update<'b>(__clap_app: Command) -> Command
fn augment_args_for_update<'b>(__clap_app: Command) -> Command
Command] so it can instantiate self via
[FromArgMatches::update_from_arg_matches_mut] Read moreSource§impl FromArgMatches for BuildIgvmCliCustomizations
impl FromArgMatches for BuildIgvmCliCustomizations
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.