/sbt-aws-lambda

sbt plugin to deploy code to AWS Lambda

Primary LanguageScalaApache License 2.0Apache-2.0

sbt-aws-lambda

sbt plugin to deploy code to AWS Lambda

Join the chat at https://gitter.im/gilt/sbt-aws-lambda Maven Central

Installation

Add the following to your project/plugins.sbt file:

addSbtPlugin("com.gilt.sbt" % "sbt-aws-lambda" % "0.2.2")

Add the AwsLambdaPlugin auto-plugin to your build.sbt:

enablePlugins(AwsLambdaPlugin)

Usage

sbt createLambda creates a new AWS Lambda function from the current project.

sbt updateLambda updates an existing AWS Lambda function with the current project.

Configuration

sbt-aws-lambda can be configured using sbt settings, environment variables or by reading user input at deploy time

sbt setting Environment variable Description
s3Bucket AWS_LAMBDA_BUCKET_ID The name of an S3 bucket where the lambda code will be stored
lambdaName AWS_LAMBDA_NAME The name to use for this AWS Lambda function. Defaults to the project name
handlerName AWS_LAMBDA_HANDLER_NAME Java class name and method to be executed, e.g. com.gilt.example.Lambda::myMethod
roleArn AWS_LAMBDA_IAM_ROLE_ARN The ARN of an IAM role to use when creating a new Lambda
region AWS_REGION The name of the AWS region to connect to. Defaults to us-east-1
awsLambdaTimeout The Lambda timeout in seconds (1-300). Defaults to AWS default.
awsLambdaMemory The amount of memory in MB for the Lambda function (128-1536, multiple of 64). Defaults to AWS default.

Publishing new versions of this plugin

This plugin uses sbt-sonatype to publish to Gilt's account on maven central

sbt publishSigned sonatypeRelease