|
1 | 1 | # @rushstack/heft-serverless-stack-plugin
|
2 | 2 |
|
3 | 3 | This is a Heft plugin for building apps using the [Serverless Stack (SST)](https://serverless-stack.com/) framework.
|
| 4 | +With this approach, the [SST toolchain](https://docs.serverless-stack.com/packages/cli) is only used for |
| 5 | +synthesizing CloudFormation stacks and deploying the app, and Heft takes over the role of compiling, linting, |
| 6 | +testing your TypeScript project. |
| 7 | + |
| 8 | +The plugin accepts two command-line parameters: |
| 9 | + |
| 10 | +- `--sst` can be appended to `heft build` or `heft start`, causing the corresponding SST operation to be invoked |
| 11 | + |
| 12 | +- `--sst-stage STAGE_NAME` allows you to customize the stage. It is equivalent to the `--stage` parameter |
| 13 | + for the SST command-line tool. |
| 14 | + |
| 15 | + |
| 16 | +The plugin has no effect without the `--sst` parameter. When the parameter is provided: |
| 17 | + |
| 18 | +- `heft build --sst` will behave similar to `sst build`, which synthesizes CloudFormation stacks |
| 19 | + in the `build/cdk.out/` directory. See [this documentation](https://docs.serverless-stack.com/packages/cli#build) |
| 20 | + for details. Heft's `--watch` mode is also supported. |
| 21 | + |
| 22 | +- `heft start --sst` will behave similar to `sst start`, which deploys a |
| 23 | + [stub lambda](https://docs.serverless-stack.com/live-lambda-development#sst-start) to AWS |
| 24 | + and then launches the WebSocket client locally for debugging. See |
| 25 | + [this documentation](https://docs.serverless-stack.com/packages/cli#start) for details. |
| 26 | + |
| 27 | + |
| 28 | +> Note that `heft build --sst` currently requires AWS credentials, which limits the ability to perform this |
| 29 | +> validation in a monorepo environment where we can't assume that every developer works on AWS. |
| 30 | +> Issue [serverless-stack#1537](https://github.com/serverless-stack/serverless-stack/issues/1537) |
| 31 | +> is tracking a possible improvement. |
| 32 | +
|
0 commit comments