pub struct BuildIgvmCliCustomizations {Show 18 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>,
}
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: bool
Ensure 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: bool
Preserve 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.
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
.Auto Trait Implementations§
impl Freeze for BuildIgvmCliCustomizations
impl RefUnwindSafe for BuildIgvmCliCustomizations
impl Send for BuildIgvmCliCustomizations
impl Sync for BuildIgvmCliCustomizations
impl Unpin for BuildIgvmCliCustomizations
impl UnwindSafe for BuildIgvmCliCustomizations
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more