gpt4 book ai didi

amazon-web-services - 当代码 URL 更改但它指向的代码没有更改时,使用 AutoPublishAlias 的 SAM Lambda 自动版本控制是否有效?

转载 作者:行者123 更新时间:2023-12-04 04:01:30 27 4
gpt4 key购买 nike

简单问题:

使用 AutoPublishAlias 的 SAM Lambda 自动版本控制是否适用于 AWS::Serverless::Function当代码 CodeUri 更改但它指向的实际代码没有更改时?

背景

我们正在使用 SAM AWS::Serverless::Function 部署多个 Lambda@Edge 函数资源类型。

我们的部署通过将代码放入 S3 存储桶然后触发 CloudFormation 堆栈更新来运行。除了这些 Lambda 之外,我们的堆栈还包含其他内容。

这样,我们经常会在 lambda 代码不变的情况下进行部署。

但是,每次部署时,代码 URI 都会更改为我们最新部署的存储桶,这会按预期触发尝试发布的新版本,这与 SAM documentation 中的注释一致。 (粘贴在下面以供上下文)

NOTE: AutoPublishAlias will publish a new version only when the CodeUri changes. Updates to other configuration (ex: MemorySize, Timeout) etc will not publish a new version. Hence your Alias will continue to point to old version that uses the old configurations.

我之所以问这个问题,是因为我们遇到了一些暂时性的 CloudFormation 部署问题,我一直在尝试找出可能与此相关的根本原因。我们在 CloudFormation 堆栈更新中的 SAM 生成版本上收到的错误如下:

A version for this Lambda function exists ( {some number} ). Modify the function to create a new version.

我查看了 SAM code创建版本的位置及其大部分文档,但找不到明确的答案。

我们可以每次在版本上手动创建具有不同逻辑 ID 的 AWS::Lambda::FunctionAWS::Lambda::Version (?) 解决了这个问题,但我们试图利用 SAM 来自动控制 Lambda 的版本。

感谢任何帮助!

最佳答案

是的,当 CodeUri 更改时,SAM 会创建新版本,但是,如果没有更改,Lambda 将不允许您创建新版本。

关于amazon-web-services - 当代码 URL 更改但它指向的代码没有更改时,使用 AutoPublishAlias 的 SAM Lambda 自动版本控制是否有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53217761/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com