Serverless Stack plugin
Plugin package: | @rushstack/heft-serverless-stack-plugin |
Plugin name: | serverless-stack-plugin implemented by ServerlessStackPlugin.ts |
Plugin config file: | (none) |
heft.json options: | (none) |
This is a Heft plugin for building apps using the Serverless Stack (SST) framework. With this approach, the SST toolchain is only used for synthesizing CloudFormation stacks and deploying the app, and Heft takes over the role of compiling, linting, testing your TypeScript project.
When to use it
If your lambda service was built using the Serverless Stack framework.
How it works
The plugin has no effect without the --sst
parameter. When the parameter is provided:
heft build --sst
will behave similar tosst build
, which synthesizes CloudFormation stacks in thebuild/cdk.out/
directory. See this documentation for details. Heft'sbuild-watch
mode is also supported.heft start --sst
will behave similar tosst start
, which deploys a stub lambda to AWS and then launches the WebSocket client locally for debugging. See this documentation for details.
Note that
heft build --sst
currently requires AWS credentials, which limits the ability to perform this validation in a monorepo environment where we can't assume that every developer works on AWS. Issue serverless-stack#1537 is tracking a possible improvement.
Configuration
The heft-serverless-stack-tutorial sample folder illustrates a complete project setup.
CLI parameters
heft-serverless-stack-plugin/heft-plugin.json defines these parameters:
--sst
Invokes the SST postprocessing. Requires AWS credentials.
--sst-stage STAGE_NAME
Specifies the Serverless Stack stage; equivalent to
to the "--stage" parameter from the "sst" CLI