Overview
A working example that shows how to run lambda functions with serverless-offline and interact with a local SQS queue.
Setup
Prerequisites
This project requires the following;
- nodejs
- npm
- serverless framework
- docker
- aws-cli
Node.js and npm
Download and install nodejs 8.10.
Serverless Framework
Once npm is installed, install serverless npm package with
npm install -g serverless
If you run into a permission issue writing to /usr/local/lib/node_modules, I suggest to change the default global node modules location. Please follow this workaround.
AWS CLI
This is needed for serverless-offline-sqs plugin to function. Follow (AWS official documentation)[https://docs.aws.amazon.com/cli/latest/userguide/installing.html] to install AWS CLI.
Configure AWS CLI after installation by running aws configure
. You don't have to set real access key/secret. Any values will do.
As for the region, enter us-west-2
.
How to run this
To fully test the integration between API Gateway and the Lambda function, the full deployment can be emulated using serverless-offline
- Install plugins via NPM:
npm install
(One-off) ./start.sh
This will serve the full project locally on port :3000
via an API gateway so GET and POST requests are required to access the functions pulling the settings from the local
stage.