Expand description
Lambda function execution engine.
Converts the stubbed Invoke echo path into real execution by routing
every request through an Executor trait. Backends include:
NoopExecutor— preserves the legacy “echo back the payload” behavior; used in unit tests and whenLAMBDA_EXECUTOR=disabled.AutoExecutor— defaults macOS Zip Lambdas to Squib and otherwise uses native execution.NativeExecutor(Phase 3) — spawnsprovided.*bootstraps directly on the host.DockerExecutor(Phase 4) — runs any supported runtime in an AWS Lambda base image.SquibExecutor— runsarm64Zip functions through a Squib microVM guest agent.
All backends share a single in-process Lambda Runtime API server (Phase 2) so the bootstrap-side protocol is identical to AWS.
async-trait is required because RustackLambda stores the executor as
Arc<dyn Executor> for backend swapping at startup; the trait must be
object-safe.
Modules§
- runtime_
api - In-process Lambda Runtime API server.
Structs§
- Auto
Executor - Executor that chooses the concrete backend for each invocation.
- Invoke
Request - Everything an executor needs to run one invocation.
- Invoke
Response - Outcome of a successful round-trip with the user code (which may itself have reported a function error).
- Native
Executor - Native process executor.
- Noop
Executor - Echoes the request payload back wrapped in a fake API Gateway response shape — identical to the old hard-coded stub.
- Squib
Executor - Lambda executor that delegates invocation to a Squib microVM guest agent.
- Squib
Executor Config - Configuration for
SquibExecutor.
Enums§
- Executor
Backend - Selects which execution backend the provider should construct at startup.
- Executor
Error - Failure modes for an execution backend.
- Package
Type - Deployment package kind, mirroring the Lambda API.
Traits§
- Executor
- Backend that turns an
InvokeRequestinto anInvokeResponse.