问题描述
AWS CDK 应用程序中 app.synth()
行的用途是什么?例如,它可以在第 29 行看到:
https://github.com/aws-samples/aws-cdk-examples/blob/master/typescript/ecs/fargate-application-load-balanced-service/index.ts
我查看了 CDK 文档,但找不到该功能的实际用途。据我了解,该应用程序会在 cdk deploy
或 cdk synth
上自动合成。我还采用了上面链接的 repo 中显示的示例,注释掉了 app.synth()
行,部署了它,它似乎按预期工作。因此,我想知道在 app.synth() 的目的方面我是否遗漏了什么
解决方法
cdk synth 仅构建您的 CloudFormation 模板。它不会将其部署(创建实际资源)到 AWS。您可以使用构建的模板,在 CFN 控制台中手动部署,编辑或检查。
cdk deploy 将构建模板并将其部署到 AWS。
人们将 synth
与 deploy
结合使用,因为这是一种好的做法:
在部署之前进行综合是可选的(尽管良好做法)。 AWS CDK 会在每次部署之前综合您的堆栈。