JSPM

serverless-api-stage

1.3.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1124
  • Score
    100M100P100Q134899F
  • License MIT

Serverless API Stage plugin, enables stage variables and logging for AWS API Gateway.

Package Exports

  • serverless-api-stage

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (serverless-api-stage) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Serverless API Stage plugin

Build Status License: MIT

Plugin for the serverless framework that allows the use of stages with defined stage variables and logging configuration, when using the AWS provider.

This is a rewritten plugin with the same functionality provided by two existing plugins:

Namely:

  • In addition to the AWS::APIGateway::Deployment resource, an AWS::APIGateway::Stage resource is also created.
  • The stage is linked to the deployment, to replace the StageName property of the deployment.
  • The stage may have stage variables defined by custom.stageSettings.Variables in your serverless.yml.
  • The stage may have logging and other method properties defined by custom.stageSettings.MethodSettings in your serverless.yml.
  • An AWS::IAM::Role resource is created with the correct permissions to write Cloudwatch logs.
  • This IAM Role for logs is set in the AWS::ApiGateway::Account settings resource.

Installation

Install the plugin via npm.

Usage Example

#...
plugins:
  - serverless-api-stage
#...
custom:
  stageSettings:
    CacheClusterEnabled: true
    CacheClusterSize: '0.5'
    Variables:
      foo: bar
      baz: xyzzy
    MethodSettings:
      LoggingLevel: INFO
      CachingEnabled: true
      CacheTtlInSeconds: 3600
      # see below...
#...

The full list of MethodSettings available are defined in the AWS CloudFormation documentation.

Contributors

Please contribute by submitting a pull request, or raising an issue.

Code changes or additions should include corresponding unit test changes or additions. Tests can be run locally using npm test. This requires global installation of jshint and mocha (npm install -g jshint mocha).

Please don't update the version attribute in package.json, as multiple changes might be bundled into a single release. Version bumps will be done in separate pull requests at the time of creating the release and publishing to npm.