CI/CD 的 SAM CLI,而不是 Cloud Formation

SAM CLI for CI/CD other than Cloud Formation

是否可以使用 SAM CLI(或人类已知的任何其他工具)部署具有定义的触发器、内存和超时限制设置等的 lambda 函数,SAM CLI 能够使用 Cloud Formation 执行此操作的方式(甚至以更好的方式)?

目前我正在使用 TravisCI 部署我的 lambda 函数,但这实际上只是一个更好的 AWS zip 上传器,因为我无法像通过 SAM(无服务器)那样为 lambda 函数定义任何触发器应用模型)。

我会考虑利用 AWS 代码管道、代码构建、代码部署来实现无服务器功能 CI/CD。 Sam 还拥有一些很棒的内置工具,可以利用引擎盖下的代码部署来启用加权推出金丝雀部署等功能。

https://github.com/aws-samples/aws-safe-lambda-deployments https://aws.amazon.com/blogs/compute/implementing-safe-aws-lambda-deployments-with-aws-codedeploy/

对于指定内存、触发器、超时等内容,这都将在您提到的 cloudformation 模板中完成,这是最佳实践。

自从提出这个问题后,我遇到了不同的有用工具来部署已配置的 Lambda 函数:

  • serverless framework

    All-in-one development & monitoring of auto-scaling apps on AWS Lambda

  • AWS CDK

    Define cloud infrastructure using familiar programming languages