No description or website provided.
Clone or download
Latest commit 82733fd Jan 27, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
golambdainvoke Added README Jan 26, 2018
LICENSE.md Added README Jan 26, 2018
README.md Update README.md Jan 27, 2018
toupperlambda.go Moved example lambda out of package Jan 26, 2018

README.md

go-lambda-invoke

Small package to allow you to invoke your Go AWS lambda locally.

This might be useful for:

  • You want to run an integration test, maybe in conjunction with LocalStack?
    • Unit testing is probably better in most cases
  • You want to validate your CI has built a valid linux binary of your application before deploying

I wrote a blog post about it here https://djhworld.github.io/post/2018/01/27/running-go-aws-lambda-functions-locally/

Installing

go get -u github.com/djhworld/go-lambda-invoke/golambdainvoke

Example usage

Run the example lambda toupperlambda.go on port 8001

_LAMBDA_SERVER_PORT=8001 go run ./toupperlambda.go

Then use this library in tests or wherever you need it, by calling

response, err := golambdainvoke.Run(8001, "payload")

Note that payload can be any structure that can be encoded by the encoding/json package. Your lambda function will need to use this structure in its type signature.