首页 > 解决方案 > 如何识别有效的 $LATEST lambda 版本?

问题描述

我已lambda versions启用,我正在尝试了解$LATESTAWS 中的哪个版本。通常,最新部署的版本有一个别名$LATESTor your-custom-name(就像我一样)。

根据 AWS 控制台屏幕截图,版本 29alias:live是正确的最新版本,但如果我在 NodeJS 应用程序中使用 SDK 拉取版本,会单独$LATEST29看到. 我的印象是它应该只返回$LATESTOR29然后剩下的

问题:

代码:

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 控制台输出:

在此处输入图像描述

标签: node.jstypescriptaws-lambdaversion

解决方案


推荐阅读