Terminates a MicroVM. This operation is idempotent; terminating a MicroVM that has already been terminated succeeds without error.
Parameters:
Raises:
Source code in docs_src/capo_lambda_microvms/_services/lambda_microvms.py
| def terminate_microvm(
self,
microvm_identifier: "capo_lambda_microvms.types.microvm_identifier.MicrovmIdentifier",
*,
config_overrides: Optional[LambdaMicrovmsClientConfig] = None,
) -> (
"capo_lambda_microvms.types.terminate_microvm_response.TerminateMicrovmResponse"
):
"""<p>Terminates a MicroVM. This operation is idempotent; terminating a MicroVM that has already been terminated succeeds without error.</p>
Args:
microvm_identifier: <p>The ID of the MicroVM to terminate.</p>
Raises:
capo_lambda_microvms.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
capo_lambda_microvms.errors.internal_server_exception.InternalServerException: <p>An internal server error occurred. Retry the request later.</p>
capo_lambda_microvms.errors.throttling_exception.ThrottlingException: <p>The request was denied due to request throttling. Retry the request later.</p>
capo_lambda_microvms.errors.validation_exception.ValidationException: <p>The input does not satisfy the constraints specified by the service.</p>
capo_lambda_microvms.errors.conflict_exception.ConflictException: <p>The request could not be completed due to a conflict with the current state of the resource.</p>
capo_lambda_microvms.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
capo_lambda_microvms.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
def _handler(
req: "OperationRequest[capo_lambda_microvms.types.terminate_microvm_request.TerminateMicrovmRequest]",
) -> OperationResponse[
"capo_lambda_microvms.types.terminate_microvm_response.TerminateMicrovmResponse"
]:
import capo_lambda_microvms._operations.lambda_microvms.terminate_microvm
output, http_response = (
capo_lambda_microvms._operations.lambda_microvms.terminate_microvm.terminate_microvm(
req.options, req.input
)
)
return OperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("TerminateMicrovm")
)
input_: capo_lambda_microvms.types.terminate_microvm_request.TerminateMicrovmRequest = {
"microvm_identifier": microvm_identifier
}
response = execute_pipeline(
OperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
response.response.close()
return response.output
|