使用Amazon Lambda函数我使用AWS Lambda功能提供的版本控制功能。每当我向AWS部署新版本的工件时,我都会创建新版本的函数并将其发布(使用屏幕截图中的弹出窗口)。
但是我如何发布我的函数的任何先前版本(例如当我需要回滚我的上一个出版物时)?
答案 0 :(得分:2)
要回滚到特定版本,您需要将分配给当前版本的别名指向要回滚到的版本。
例如:我的最新版本为20,别名为“有效”。对于我要回滚或删除版本 20,我需要删除别名或将其重新分配给另一个版本。因此,如果我将别名指向版本17,则lambda将采用版本17作为默认版本或产品版本。
您可以在此处更新别名:
(使用相关值更新myRegion和functionName。)
在上面指定的页面中,转到“ 别名”部分,单击“ 版本”下拉菜单(默认情况下,它将显示为其分配别名的版本)。 选择别名要指向的版本,然后点击保存。
就这么多!
答案 1 :(得分:1)
您应该为每个新版本提供别名。
相反,假设您在通知配置中指定了别名ARN(例如,PROD别名ARN),而不是指定功能ARN。在将Lambda函数的新版本升级到生产环境时,只需更新PROD别名即可指向最新的稳定版本。您无需在Amazon S3中更新通知配置。
当您需要回滚到以前的版本时,同样适用 你的Lambda功能。在这种情况下,您只需更新PROD别名 指向不同的功能版本。无需更新 事件源映射。
答案 2 :(得分:1)
我发现一个解决方案,如果您遇到紧急情况,可以使用lambda的先前版本,下载部署包,然后使用aws cli重新部署下载的zip包。我敢肯定有一个更优雅的解决方案,但是如果您在紧要关头并且现在需要一些东西,那么这个方法就可以了。
$ aws lambda update-function-code \
--function-name my_lambda_function \
--zip-file fileb://function.zip
答案 3 :(得分:0)
Lambda 函数中没有这样的功能。