Enum cloudformatious::ApplyStackError [−][src]
pub enum ApplyStackError { CloudFormationApi(Box<dyn Error>), CreateChangeSetFailed { id: String, status: ChangeSetStatus, status_reason: String, }, Failure(StackFailure), Warning { output: ApplyStackOutput, warning: StackWarning, }, }
Errors emitted by an apply_stack
operation.
Variants
A CloudFormation API error occurred.
This is likely to be due to invalid input parameters or missing CloudFormation permissions. The inner error should have a descriptive message.
Note: the inner error will always be some variant of RusotoError
, but since they are
generic over the type of service errors we either need a variant per API used, or Box
. If
you do need to programmatically match a particular API error you can use Box::downcast
.
The change set failed to create.
Change sets are created asynchronously and may settle in a FAILED
state. Trying to execute
a FAILED
change set will fail (who would have guessed). This error includes details of the
failing change set to help diagnose errors.
Show fields
Fields of CreateChangeSetFailed
id: String
The id of the failed change set.
status: ChangeSetStatus
The status of the failed change set.
status_reason: String
The reason the change set failed to create.
Failure(StackFailure)
The apply stack operation failed.
The apply stack operation succeeded with warnings.
It is possible for resource errors to occur even when the overall operation succeeds, such
as failing to delete a resource during clean-up after a successful update. Rather than
letting this pass silently, or relying on carefully interrogating StackEvent
s, the
operation returns an error.
Note that the error includes the ApplyStackOutput
, since the stack did settle into a
successful status. If you don’t care about non-critical resource errors you can use this to
simply map this variant away:
let output = client .apply_stack(input) .await .or_else(|error| match error { ApplyStackError::Warning { output, .. } => Ok(output), error => Err(error), })?;
Show fields
Fields of Warning
Trait Implementations
impl Debug for ApplyStackError
[src]
impl Debug for ApplyStackError
[src]impl Display for ApplyStackError
[src]
impl Display for ApplyStackError
[src]impl Error for ApplyStackError
[src]
impl Error for ApplyStackError
[src]fn source(&self) -> Option<&(dyn Error + 'static)>
[src]
fn source(&self) -> Option<&(dyn Error + 'static)>
[src]The lower-level source of this error, if any. Read more
fn backtrace(&self) -> Option<&Backtrace>
[src]
fn backtrace(&self) -> Option<&Backtrace>
[src]backtrace
)Returns a stack backtrace, if available, of where this error occurred. Read more
fn description(&self) -> &str
1.0.0[src]
fn description(&self) -> &str
1.0.0[src]use the Display impl or to_string()
Auto Trait Implementations
impl !RefUnwindSafe for ApplyStackError
impl !Send for ApplyStackError
impl !Sync for ApplyStackError
impl Unpin for ApplyStackError
impl !UnwindSafe for ApplyStackError
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]fn instrument(self, span: Span) -> Instrumented<Self>
[src]
fn instrument(self, span: Span) -> Instrumented<Self>
[src]Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
fn in_current_span(self) -> Instrumented<Self>
[src]
fn in_current_span(self) -> Instrumented<Self>
[src]impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self