1 回答
- 最新
- 投票最多
- 评论最多
0
【以下的回答经过翻译处理】 这种行为在CloudFormation中是不可能的。原因是引用$LATEST无法保证堆栈的可复现状态。
假设您执行了一次成功的部署。然后,在部署之后,您的Lambda层的最新版本发生了更改。稍后,您尝试进行新的部署,但失败了。如果发生这种情况,CloudFormation将尝试回滚到先前已知的良好状态。为了回滚到那个已知状态,CloudFormation需要Lambda层的具体版本号。这就是为什么具体版本号需要在堆栈模板中的原因。
许多客户通过在堆栈模板中包含层本身(通过AWS::Lambda::LayerVersion)并对其进行引用来克服这个限制。否则,您可以在CloudFormation YAML模板中放置类似$LAYER_VERSION的占位符,并在使用外部程序(如envsubst)上传模板之前,将Lambda版本的值替换进去,然后使用渲染后的模板更新堆栈。
相关内容
- AWS 官方已更新 1 年前
- AWS 官方已更新 10 个月前
- AWS 官方已更新 1 年前