Skip to content

Deploy AWS Lambda functions in seconds with Serverless Components.

License

Notifications You must be signed in to change notification settings

parkhub/aws-lambda

 
 

Repository files navigation

aws-lambda

Deploy Lambda functions to AWS in seconds with Serverless Components. Utilizes layers for dependency management and S3 accelerated uploads for maximum upload speeds.

 

  1. Install
  2. Create
  3. Configure
  4. Deploy

 

1. Install

$ npm install -g serverless

2. Create

$ mkdir my-function && cd my-function

the directory should look something like this:

|- code
  |- handler.js
  |- package.json # optional
|- serverless.yml
|- .env           # your AWS api keys
# .env
AWS_ACCESS_KEY_ID=XXX
AWS_SECRET_ACCESS_KEY=XXX
// handler.js
module.exports.hello = async (event, context, cb) => {
  return { hello: 'world' }
}

3. Configure

# serverless.yml

myFunction:
  component: "@serverless/aws-lambda"
  inputs:
    name: my-function
    description: My Serverless Function
    memory: 128
    timeout: 20
    code: ./code
    handler: handler.hello
    runtime: nodejs8.10
    env:
      TABLE_NAME: my-table
    region: us-east-1

    # if you want to use a specific role pass an arn
    role: 
      arn: arn:XXX

    # if you'd like to include any shims
    shims:
      - ../shims/shim.js 

    # specifying an existing deployment bucket would optimise deployment speed
    # by using accelerated multipart uploads and dependency management with layers
    bucket: my-deployment-bucket

4. Deploy

$ serverless

For a real world example of how this component could be used, take a look at how the socket component is using it.

 

New to Components?

Checkout the Serverless Components repo for more information.

About

Deploy AWS Lambda functions in seconds with Serverless Components.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%