#[non_exhaustive]pub enum AlpineError {
Show 14 variants
#[non_exhaustive] Config {
reason: String,
},
#[non_exhaustive] Container {
subject: String,
reason: String,
},
#[non_exhaustive] Signature {
subject: String,
reason: String,
},
#[non_exhaustive] Digest {
subject: String,
expected: String,
actual: String,
},
#[non_exhaustive] Index {
subject: String,
reason: String,
},
#[non_exhaustive] Pin {
unheld: Vec<UnheldPin>,
},
#[non_exhaustive] PlanDocument {
reason: String,
},
#[non_exhaustive] Resolve {
reason: String,
},
#[non_exhaustive] Collision {
owner: String,
claimant: String,
path: String,
},
#[non_exhaustive] Script {
package: String,
script: &'static str,
status: ExitStatus,
},
Launch(Error),
Cancelled,
Fetch(FetchError),
#[non_exhaustive] Io {
op: &'static str,
path: PathBuf,
source: Error,
},
}Expand description
A failure provisioning an Alpine rootfs.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
#[non_exhaustive]Config
The configuration cannot be provisioned from as it stands.
Fields
This variant is marked as non-exhaustive
#[non_exhaustive]Container
An apk container is malformed, truncated, or carries something the reader refuses.
Fields
This variant is marked as non-exhaustive
#[non_exhaustive]Signature
A signature was not accepted: it did not verify against the key set, or the signature member was refused on its own terms.
Fields
This variant is marked as non-exhaustive
#[non_exhaustive]Digest
Bytes did not have the digest the archive recorded for them.
The container held together; what it carries is not what something that vouched for it said it would be. Either a mirror served a package that is not the one the index named, or the package’s own file tree is not the one its metadata names.
Fields
This variant is marked as non-exhaustive
#[non_exhaustive]Index
An index’s records are not the ones the format defines.
The container held together and its signature verified; what it carries is not a readable set of records.
Fields
This variant is marked as non-exhaustive
#[non_exhaustive]Pin
A pin could not be held: the repositories no longer supply a package at the version and with the bytes a plan recorded.
Fields
This variant is marked as non-exhaustive
#[non_exhaustive]PlanDocument
A plan document could not be read, or a plan could not be written as one.
Fields
This variant is marked as non-exhaustive
#[non_exhaustive]Resolve
The closure the repositories offer is not one that can be installed.
Fields
This variant is marked as non-exhaustive
#[non_exhaustive]Collision
Two packages ship the same path and neither says it may take it from the other.
apk warns, skips the file, and records the package as broken. A root
is something a caller goes on to build on, so this layer refuses instead
rather than publish a tree whose contents depend on which package was
unpacked first.
Fields
This variant is marked as non-exhaustive
#[non_exhaustive]Script
An install script did not succeed.
Fields
This variant is marked as non-exhaustive
status: ExitStatusHow it ended.
Launch(Error)
A cage could not be built or run.
Cancelled
The bootstrap’s observer asked it to stop.
Surfaces to a caller as super::ProvisionError::Cancelled.
Fetch(FetchError)
Fetching from the archive failed.
#[non_exhaustive]Io
A host I/O operation failed.
Fields
This variant is marked as non-exhaustive
Implementations§
Source§impl AlpineError
impl AlpineError
Trait Implementations§
Source§impl Debug for AlpineError
impl Debug for AlpineError
Source§impl Display for AlpineError
impl Display for AlpineError
Source§impl Error for AlpineError
impl Error for AlpineError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<FetchError> for AlpineError
impl From<FetchError> for AlpineError
Source§fn from(err: FetchError) -> AlpineError
fn from(err: FetchError) -> AlpineError
Auto Trait Implementations§
impl !RefUnwindSafe for AlpineError
impl !UnwindSafe for AlpineError
impl Freeze for AlpineError
impl Send for AlpineError
impl Sync for AlpineError
impl Unpin for AlpineError
impl UnsafeUnpin for AlpineError
Blanket Implementations§
Source§impl<T> AsErrorSource for Twhere
T: Error + 'static,
impl<T> AsErrorSource for Twhere
T: Error + 'static,
Source§fn as_error_source(&self) -> &(dyn Error + 'static)
fn as_error_source(&self) -> &(dyn Error + 'static)
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.