2.0.0 • Published 3 years ago

@dealmore/sammy v2.0.0

Weekly downloads
89
License
Apache-2.0
Repository
github
Last release
3 years ago

Sammy

A Node.js wrapper for AWS SAM CLI for local testing of Lambda functions.

Usage

npm i -D @millihq/sammy     # npm
yarn add -D @millihq/sammy  # or yarn

Assuming you have a Lambda function with the following content:

// handler.js
exports.handler = async function (event, context) {
  return {
    isBase64Encoded: false,
    statusCode: 200,
    body: 'Hello World!',
    headers: {
      'content-type': 'application/json',
    },
  };
};

which is packaged into a compressed zip file called lambda.zip.

Run lambda locally with API-Gateway

You can now start the Lambda function locally and access it through an API-Endpoint:

import * as path from 'path';

import { generateAPISAM, APISAMGenerator } from '@millihq/sammy';

const lambdaSAM = await generateAPISAM({
  lambdas: {
    first: {
      filename: 'lambda.zip',
      handler: 'handler.handler',
      runtime: 'nodejs14.x',
      route: '/test',
      method: 'get',
    },
  },
  cwd: process.cwd(),
});

const response = await lambdaSAM.sendApiGwRequest('/test');
console.log(await response.text());
// => Hello World!

License

Apache-2.0 - see LICENSE for details.

2.0.0

3 years ago

1.7.0

3 years ago

1.6.1

3 years ago

1.6.0

3 years ago

1.5.0

3 years ago

1.4.0

3 years ago

1.3.0

3 years ago

1.2.0

3 years ago

1.1.0

3 years ago

1.0.0

3 years ago