无服务器堆栈插件
插件包 | @rushstack/heft-serverless-stack-plugin |
插件名称 | serverless-stack-plugin 由 ServerlessStackPlugin.ts 实现 |
插件配置文件 | (无) |
heft.json 选项 | (无) |
这是一个用于使用 无服务器堆栈 (SST) 框架构建应用程序的 Heft 插件。使用这种方法,SST 工具链 仅用于合成 CloudFormation 堆栈并部署应用程序,而 Heft 则负责编译、整理和测试你的 TypeScript 项目。
何时使用它
如果你的 lambda 服务是使用无服务器堆栈框架构建的。
工作原理
如果没有 --sst
参数,该插件将无效。当提供该参数时
heft build --sst
的行为类似于sst build
,它会在build/cdk.out/
目录中合成 CloudFormation 堆栈。有关详细信息,请参见 此文档。Heft 的build-watch
模式也受支持。heft start --sst
的行为类似于sst start
,它会将一个 存根 lambda 部署到 AWS,然后在本地启动 WebSocket 客户端进行调试。有关详细信息,请参见 此文档。
请注意,
heft build --sst
当前需要 AWS 凭据,这限制了在多仓库环境中执行此验证的能力,因为我们无法假设每个开发人员都在 AWS 上工作。问题 serverless-stack#1537 正在跟踪可能改进。
配置
示例文件夹 heft-serverless-stack-tutorial 说明了完整的项目设置。
CLI 参数
heft-serverless-stack-plugin/heft-plugin.json 定义了这些参数
--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