Command line tool to locally run and deploy your node.js application to Amazon Lambda.
$ node-lambda run
$ npm install -g node-lambda
The node-lambda-template example app makes it easy to get up and running.
There are 4 available commands.
$ node-lambda setup
$ node-lambda run
$ node-lambda package
$ node-lambda deploy
Initializes the event.json, context.json, .env, deploy.env files, and event_sources.json files. event.json is where you mock your event. context.json is where you can add additional mock data to the context passed to your lambda function. .env is where you place your deployment configuration. deploy.env has the same format as .env, but is used for holding any environment/config variables that you need to be deployed with your code to Lambda but you don't want in version control (e.g. DB connection info). event_sources.json is used to set the event source of the Lambda function (Not all event sources available in Lambda are supported).
$ node-lambda setup --help
Usage: setup [options]
Sets up the .env file.
Options:
-h, --help output usage information
-j, --eventFile [event.json] Event JSON File
-x, --contextFile [context.json] Context JSON File
After running setup, it's a good idea to gitignore the generated event.json and .env files, as well as .lambda.
$ echo -e ".env\ndeploy.env\nevent.json\n.lambda" >> .gitignore
AWS_ENVIRONMENT // (default: '')
AWS_ENDPOINT // (default: '')
CONFIG_FILE // (default: '')
EVENT_SOURCE_FILE // (default: '')
EXCLUDE_GLOBS // (default: '')
AWS_ACCESS_KEY_ID // (default: not set!)
AWS_SECRET_ACCESS_KEY // (default: not set!)
AWS_PROFILE = // (default: '')
AWS_SESSION_TOKEN = // (default: '')
AWS_REGION = // (default: 'us-east-1,us-west-2,eu-west-1')
AWS_FUNCTION_NAME // (default: package.json.name or 'UnnamedFunction')
AWS_HANDLER // (default: 'index.handler')
AWS_ROLE_ARN || AWS_ROLE // (default: 'missing')
AWS_MEMORY_SIZE // (default: 128)
AWS_TIMEOUT // (default: 60)
AWS_RUN_TIMEOUT // (default: 3)
AWS_DESCRIPTION // (default: package.json.description or '')
AWS_RUNTIME // (default: 'nodejs8.10')
AWS_PUBLISH // (default: false)
AWS_FUNCTION_VERSION // (default: '')
AWS_VPC_SUBNETS // (default: '')
AWS_VPC_SECURITY_GROUPS // (default: '')
AWS_TRACING_CONFIG // (default: '')
AWS_LOGS_RETENTION_IN_DAYS // (default: '')
EVENT_FILE // (default: 'event.json')
PACKAGE_DIRECTORY // (default: not set)
CONTEXT_FILE // (default: 'context.json')
PREBUILT_DIRECTORY // (default: '')
SRC_DIRECTORY // (default: '')
DEPLOY_TIMEOUT // (default: '120000')
DOCKER_IMAGE // (default: '')
DEPLOY_ZIPFILE // (default: '')
DEPLOY_USE_S3 // (default: false)
AWS_DLQ_TARGET_ARN // (default: not set)
Runs your Amazon Lambda index.js file locally. Passes event.json data to the Amazon Lambda event object.
