Skip to content

civicteam/serverless-offline-direct-lambda

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 

serverless-offline-direct-lambda

A Serverless Offline plugin that exposes lambdas with no API Gateway event via HTTP, to allow offline direct lambda-to-lambda interactions.

Note - this requires the plugin 'serverless-offline'.

To include in your project, add the following to the plugins section in serverless.yml:

- serverless-offline-direct-lambda

To run:

servlerless offline start

(calling the command 'start' is necessary to trigger the plugin, simply running 'serverless online' does not trigger the start hooks).

The plugin will create api-gateway proxies for all lambdas with no triggering events.

You will see output like this:

$ sls offline start
Serverless: Running Serverless Offline with direct lambda support
Serverless: Starting Offline: dev/us-east-1.

Serverless: Routes for myLambda:
Serverless: (none)

Serverless: Routes for my-project-dev-myLambda_proxy:
Serverless: POST /proxy/my-project-dev-myLambda

The body of the POST should match the JSON data that would ordinarily be passed in a lambda-to-lambda call. i.e.

{
  "Payload":...
}

On the client side, abstract the decision to use a direct AWS.lambda.invoke() call or an http call to the proxy using: https://github.com/civicteam/lambda-wrapper

About

A Serverless Offline plugin that exposes lambdas with no API Gateway event via HTTP, to allow offline direct lambda-to-lambda interactions.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published