Skip to main content

GetImageBuildResponseWire

Struct GetImageBuildResponseWire 

Source
pub struct GetImageBuildResponseWire {
    pub image_arn: String,
    pub image_version: String,
    pub build_id: String,
    pub build_state: String,
    pub architecture: String,
    pub chipset: String,
    pub chipset_generation: String,
    pub created_at: f64,
    pub state_reason: Option<String>,
    pub snapshot_build: Option<SnapshotBuild>,
}
Expand description

GetMicrovmImageBuildOutput, which is MicrovmImageBuildSummary plus one member.

§Why this is not the same type as the summary

It differs by exactly one member — snapshotBuild — and that member is the whole reason to make the call: it is the only place any API reports a size for anything this platform builds. Nothing on GetMicrovmImage, GetMicrovm, or either listing carries a byte count, and the three figures here are the quantities the snapshot read, write, and storage line items bill on (crate::cost). A separate type rather than an Option field on the summary, because the summary is a listing shape that never carries one, and an Option there would read as “the service sometimes omits the sizes” rather than “the listing does not have this member”.

Every other member is required and identical to the summary’s, so the same eight are bare fields here.

Fields§

§image_arn: String§image_version: String§build_id: String§build_state: String§architecture: String§chipset: String§chipset_generation: String

The Graviton generation this build targeted. One CreateMicrovmImage fans out into one build per generation, so a version’s builds differ only in this member — and a partially failed image, one generation succeeding and the other not, is a state a caller should expect (docs/PLATFORM.md).

§created_at: f64§state_reason: Option<String>§snapshot_build: Option<SnapshotBuild>

The three snapshot sizes, when the service reports them.

Option because the model does not mark it required, and because a failed build answers a partial one: measured 2026-08-16 on a real FAILED build, snapshotBuild carried codeInstallSizeInBytes alone with no memory and no disk snapshot — which is exactly the shape of a build that installed the code and then never produced a snapshot.

Implementations§

Source§

impl GetImageBuildResponseWire

Source

pub fn describe(&self) -> String

The build as a diagnosis reads it: the generation, the state, the reason when there is one, and the sizes when the service reported them.

The generation is in the line because a version has one build per Graviton generation and they can disagree — “the build failed” is ambiguous where “generation 4 failed” is not. Sizes are appended only when present, for the reason the absent-reason rule gives: a rendered 0 bytes would claim a measurement the service did not make.

Trait Implementations§

Source§

impl Clone for GetImageBuildResponseWire

Source§

fn clone(&self) -> GetImageBuildResponseWire

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GetImageBuildResponseWire

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for GetImageBuildResponseWire

Source§

fn deserialize<__D>( __deserializer: __D, ) -> Result<GetImageBuildResponseWire, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for GetImageBuildResponseWire

Source§

fn serialize<__S>( &self, __serializer: __S, ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts 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
Source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

Source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
Source§

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

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more