我正在使用Bitbucket Pipelines为无服务器应用程序制作CD。我想为每个部署使用尽可能少的“构建分钟”。当使用AWS作为支持时,serverless deploy
命令的生命周期似乎是:
由于时差巨大,所以我不想执行第二步。所以我的问题很简单:如何部署无服务器应用程序,使其仅执行第一步并根据CloudFormation是否成功接受新软件包返回成功或失败?
我看过serverless deploy
的文档,但看不到任何启用它的选项。另外,serverless deploy
命令中似乎已经有特定于AWS的选项,因此,如果没有其他方法,这可能是无服务器团队会考虑的选项。
至于“您如何知道CloudFormation是否失败?”,为此,我宁愿设置直接来自CloudFormation的通知。该构建可以只负责推送到CloudFormation。
答案 0 :(得分:1)
我认为您无法使用serverless deploy
来做到这一点。您可以尝试使用serverless package
命令将软件包存储在.serverless文件夹中,也可以使用--package指定路径。程序包将创建一个CloudFormation模板文件,例如cloudformation-template-update-stack.json
。然后,您可以调用Create Stack API操作来创建堆栈。它将返回堆栈ID,而无需等待所有资源被创建。