pub struct LambdaFunction {Show 39 fields
pub function_name: String,
pub function_arn: String,
pub runtime: String,
pub role: String,
pub handler: String,
pub description: String,
pub timeout: i64,
pub memory_size: i64,
pub code_sha256: String,
pub code_size: i64,
pub version: String,
pub last_modified: DateTime<Utc>,
pub tags: BTreeMap<String, String>,
pub environment: BTreeMap<String, String>,
pub architectures: Vec<String>,
pub package_type: String,
pub code_zip: Option<Vec<u8>>,
pub image_uri: Option<String>,
pub policy: Option<String>,
pub layers: Vec<AttachedLayer>,
pub revision_id: String,
pub tracing_mode: Option<String>,
pub kms_key_arn: Option<String>,
pub ephemeral_storage_size: Option<i64>,
pub vpc_config: Option<Value>,
pub snap_start: Option<Value>,
pub dead_letter_config_arn: Option<String>,
pub file_system_configs: Vec<Value>,
pub logging_config: Option<Value>,
pub image_config: Option<Value>,
pub signing_profile_version_arn: Option<String>,
pub signing_job_arn: Option<String>,
pub runtime_version_config: Option<Value>,
pub master_arn: Option<String>,
pub state_reason: Option<String>,
pub state_reason_code: Option<String>,
pub durable_config: Option<Value>,
pub last_update_status_reason: Option<String>,
pub last_update_status_reason_code: Option<String>,
}Fields§
§function_name: String§function_arn: String§runtime: String§role: String§handler: String§description: String§timeout: i64§memory_size: i64§code_sha256: String§code_size: i64§version: String§last_modified: DateTime<Utc>§environment: BTreeMap<String, String>§architectures: Vec<String>§package_type: String§code_zip: Option<Vec<u8>>§image_uri: Option<String>Container image URI for PackageType=Image functions. Points at a
private or public ECR image that the runtime pulls at invoke time.
None for PackageType=Zip.
policy: Option<String>Resource-based policy attached to this function via
AddPermission, serialized as a full JSON policy document
({"Version":"2012-10-17","Statement":[...]}). None means
the function has no resource policy attached, matching the
ResourceNotFoundException AWS returns from GetPolicy in
that state. AddPermission lazily initializes this; every
RemovePermission leaves at least {"Statement":[]} behind,
matching AWS behavior.
layers: Vec<AttachedLayer>Layer versions attached to this function, in attach order. AWS
extracts each layer’s content into /opt of the runtime sandbox at
invoke time; fakecloud’s container runtime mirrors that via
docker cp. code_size is captured at attach time from the
referenced LayerVersion so GetFunctionConfiguration can echo it
without a second state lookup; layer versions are immutable so the
cached size never goes stale.
revision_id: StringRevisionId is a stable token AWS expects to round-trip through
optimistic-concurrency calls (UpdateFunctionConfiguration,
UpdateFunctionCode, AddPermission, …). It only changes when
the function config changes; we used to mint a fresh UUID per
function_config_json call which broke client-side ETag-style
guards.
tracing_mode: Option<String>TracingConfig.Mode — PassThrough (default) or Active.
kms_key_arn: Option<String>KMSKeyArn for env-var encryption (defaults to AWS-managed
aws/lambda when unset, which we represent as None).
ephemeral_storage_size: Option<i64>EphemeralStorage.Size in MiB. AWS default is 512.
vpc_config: Option<Value>VpcConfig (SubnetIds, SecurityGroupIds, Ipv6AllowedForDualStack).
fakecloud doesn’t network-isolate; we just round-trip the shape.
snap_start: Option<Value>SnapStart (ApplyOn, OptimizationStatus).
dead_letter_config_arn: Option<String>DeadLetterConfig.TargetArn for async-invoke failures.
file_system_configs: Vec<Value>FileSystemConfigs (EFS access points). Round-tripped only.
logging_config: Option<Value>LoggingConfig (LogFormat, ApplicationLogLevel, SystemLogLevel,
LogGroup).
image_config: Option<Value>ImageConfigResponse.ImageConfig for container-package functions.
signing_profile_version_arn: Option<String>SigningProfileVersionArn populated by code signing.
signing_job_arn: Option<String>SigningJobArn populated by code signing.
runtime_version_config: Option<Value>RuntimeVersionConfig (RuntimeVersionArn).
master_arn: Option<String>MasterArn — only set on numbered versions; points at the parent
$LATEST ARN.
state_reason: Option<String>Free-form StateReason populated when the function is not in the
happy Active/Successful path (e.g. image scan failed, KMS key
disabled, code-signing rejection). None for normal functions.
state_reason_code: Option<String>Machine-readable StateReasonCode paired with state_reason
(Idle, Creating, Restoring, EniLimitExceeded, …).
durable_config: Option<Value>DurableConfig for AWS’s durable-function feature
(RetentionPeriodInDays, ExecutionTimeout). Round-tripped
only — there’s no execution-history backend in fakecloud.
last_update_status_reason: Option<String>Free-form LastUpdateStatusReason set on the most recent failed
or in-progress configuration update.
last_update_status_reason_code: Option<String>Machine-readable code paired with last_update_status_reason
(EniLimitExceeded, InsufficientRolePermissions, …).
Trait Implementations§
Source§impl Clone for LambdaFunction
impl Clone for LambdaFunction
Source§fn clone(&self) -> LambdaFunction
fn clone(&self) -> LambdaFunction
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LambdaFunction
impl Debug for LambdaFunction
Source§impl<'de> Deserialize<'de> for LambdaFunction
impl<'de> Deserialize<'de> for LambdaFunction
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for LambdaFunction
impl RefUnwindSafe for LambdaFunction
impl Send for LambdaFunction
impl Sync for LambdaFunction
impl Unpin for LambdaFunction
impl UnsafeUnpin for LambdaFunction
impl UnwindSafe for LambdaFunction
Blanket Implementations§
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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