Struct BuildIgvmCli

Source
pub struct BuildIgvmCli<Recipe = OpenhclRecipeCli>
where Recipe: ValueEnum + Clone + Send + Sync + 'static,
{ pub recipe: Recipe, pub release: bool, pub release_cfg: bool, pub verbose: bool, pub locked: bool, pub install_missing_deps: bool, pub customizations: BuildIgvmCliCustomizations, }
Expand description

Build OpenHCL IGVM files for local development. DO NOT USE IN CI.

Fields§

§recipe: Recipe

Specify which OpenHCL recipe to build / customize off-of.

A “recipe” corresponds to the various standard IGVM SKUs that are actively supported and tested in our build infrastructure.

It encodes all the details of what goes into an individual IGVM file, such as what build flags openvmm_hcl should be built with, what goes into a VTL2 initrd, what igvmfilegen manifest is being used, etc…

§release: bool

Build using release variants of all constituent binary components.

Uses –profile=boot-release for openhcl_boot, –profile=openhcl-ship when building openvmm_hcl, etc…

§release_cfg: bool

Configure the IGVM file with the appropriate -release.json manifest variant, and disable debug-only features.

§verbose: bool

pass --verbose to cargo

§locked: bool

pass --locked to cargo

§install_missing_deps: bool

Automatically install any missing required dependencies.

§customizations: BuildIgvmCliCustomizations

Trait Implementations§

Source§

impl<Recipe> Args for BuildIgvmCli<Recipe>
where Recipe: ValueEnum + Clone + Send + Sync + 'static,

Source§

fn group_id() -> Option<Id>

Report the [ArgGroup::id][crate::ArgGroup::id] for this set of arguments
Source§

fn augment_args<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate Self via [FromArgMatches::from_arg_matches_mut] Read more
Source§

fn augment_args_for_update<'b>(__clap_app: Command) -> Command

Append to [Command] so it can instantiate self via [FromArgMatches::update_from_arg_matches_mut] Read more
Source§

impl<Recipe> FromArgMatches for BuildIgvmCli<Recipe>
where Recipe: ValueEnum + Clone + Send + Sync + 'static,

Source§

fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
Source§

fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>

Instantiate Self from [ArgMatches], parsing the arguments as needed. Read more
Source§

fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
Source§

fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>

Assign values from ArgMatches to self.
Source§

impl IntoPipeline for BuildIgvmCli

Source§

fn into_pipeline(self, backend_hint: PipelineBackendHint) -> Result<Pipeline>

Auto Trait Implementations§

§

impl<Recipe> Freeze for BuildIgvmCli<Recipe>
where Recipe: Freeze,

§

impl<Recipe> RefUnwindSafe for BuildIgvmCli<Recipe>
where Recipe: RefUnwindSafe,

§

impl<Recipe> Send for BuildIgvmCli<Recipe>

§

impl<Recipe> Sync for BuildIgvmCli<Recipe>

§

impl<Recipe> Unpin for BuildIgvmCli<Recipe>
where Recipe: Unpin,

§

impl<Recipe> UnwindSafe for BuildIgvmCli<Recipe>
where Recipe: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.