node.js - 如何识别有效的 $LATEST lambda 版本?
问题描述
我已lambda versions
启用,我正在尝试了解$LATEST
AWS 中的哪个版本。通常,最新部署的版本有一个别名$LATEST
or your-custom-name
(就像我一样)。
根据 AWS 控制台屏幕截图,版本 29alias:live
是正确的最新版本,但如果我在 NodeJS 应用程序中使用 SDK 拉取版本,我会单独$LATEST
29
看到. 我的印象是它应该只返回$LATEST
OR29
然后剩下的。
问题:
- 我应该区别
$LATEST
对待吗?29
- 如果我的目标是删除未使用的旧版本,那么我应该保留哪些版本?
$LATEST
,29
和28
OR 只是$LATEST
和28
?
代码:
lambda.listVersionsByFunction(params, function (err, data) {
if (err) {
console.log(err, err.stack); // an error occurred
}
else {
//Compare each version with Alias version, if not in use, then Delete
console.log("Total Versions ->", data.Versions.length);
for (var x = 0; x < data.Versions.length; x++) {
console.log("Current Version -> ", data.Versions[x].Version)
if (data.Versions[x].Version != "$LATEST" && YOUR_CONDITION_TO_GET_SECOND-LAST-VERSION) {
// console.log("DELETE version " + data.Versions[x].Version);
} else {
// console.log("RETAIN version " + data.Versions[x].Version);
}
}
}
});
输出:
Total Versions -> 17
Current Version -> $LATEST
Current Version -> 14
Current Version -> 15
Current Version -> 16
Current Version -> 17
Current Version -> 18
Current Version -> 19
Current Version -> 20
Current Version -> 21
Current Version -> 22
Current Version -> 23
Current Version -> 24
Current Version -> 25
Current Version -> 26
Current Version -> 27
Current Version -> 28
Current Version -> 29
AWS 控制台输出:
解决方案
推荐阅读
- flutter - 发布版本的应用程序不能进行 API 调用?
- scala - 我们可以使用 SparkSQL(DataFrame)创建两个 Parquet 文件吗?
- quarkus - quarkus-amazon-lambda 产品准备好了吗?
- python-3.x - 如何检查字符域选择实例
- python-3.x - 如何在 django 中显示用户数据?
- kubernetes - 防止 kubectl 删除带有资源的命名空间
- java - Android:我应该使用本地存储还是 SQLite(或类似)?
- azure-active-directory - 使用 Azure Active Directory 凭据的 JDBC
- emacs - 阻止 gdb 将命令回显到带有“+”前缀的提示符
- reactjs - 快照侦听器中未捕获的错误:FirebaseError:chatRooms 权限缺失或不足