amazon-web-services - 使用 CloudFormation 更新 AWS Lambda 函数

标签 amazon-web-services aws-lambda aws-cloudformation

我有一个带有 Lambda 资源的 CloudFormation 模板。

在部署步骤中,我需要使用我的 zip 文件(我已通过 aws cloudformation 包 上传)更新此 Lambda 函数。现在,我可以将 Lambda 函数的名称作为参数传递给 SAM functionName,但当我这样做时,它会提示 functionName 已经存在。

这很好,但我如何指定只更新代码而不尝试替换 Lambda 函数?

最佳答案

要更新 Lambda 函数的代码,您只需遵循以下流程:

# update code artefact and maybe compile it to target folder
# e.g. for Java using Maven: mvn clean compile package

$ aws cloudformation package ...
$ aws cloudformation deploy ...

这将更新模板中的所有资源。另请参阅this how-to guide .

如果您只想更新单个 Lambda 函数的代码,也可以使用 aws lambda update-function-code 。然而,对于堆栈中的不同 Lambda 函数来说,这可能有点乏味,因为您需要每个函数的 ARN。因此,去年我为此编写了一个小型 NPM 工具,名为 lambda-updater它在 CloudFormation 堆栈中搜索 Lambda 函数并仅更新函数的代码。您可能会感兴趣。

关于amazon-web-services - 使用 CloudFormation 更新 AWS Lambda 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49963524/

相关文章:

amazon-web-services - 我是否需要在 AWS 个性化中更新项目 csv?

python - 如何从 awsebcli 中删除当前用户凭据?

javascript - Node.js 捕获并重试 ECONNRESET

amazon-web-services - AWS Fargate 503 服务暂时不可用

amazon-web-services - 由 LaunchConfig 创建的实例的 CloudFormation 标签

amazon-web-services - AWS Cloudformation 在创建之前删除资源

django - 如何将EC2中的Django连接到RDS中的Postgres数据库?

aws-lambda - 如何使用无服务器框架在 Lambda 中管理 Aurora Serverless 数据 API 的 typeORM 连接

node.js - 您可以从非 websocket lambda 向 websocket 客户端发送消息吗?

amazon-web-services - 如何在负载均衡器中生成 ListenerCertificate CertificateArn