要删除 AWS Lambda 层但保留层版本历史记录,您可以使用 AWS CLI 和一些脚本来完成此操作。下面是一个解决方案,其中包含了一些示例代码:
aws lambda list-layer-versions --layer-name --query 'LayerVersions[].Version'
确保将 替换为您要删除的层的名称。
aws lambda delete-layer-version --layer-name --version-number
确保将 替换为您要删除的层的名称,将 替换为要删除的层版本号。
delete_layer_history.sh 的脚本,并将以下示例代码复制到脚本中:#!/bin/bash
LAYER_NAME=""
while IFS= read -r VERSION; do
aws lambda delete-layer-version --layer-name $LAYER_NAME --version-number $VERSION
done < <(aws lambda list-layer-versions --layer-name $LAYER_NAME --query 'LayerVersions[].Version')
确保将 替换为您要删除的层的名称。
sh delete_layer_history.sh
该脚本将使用 AWS CLI 循环遍历并删除所有层版本。
请注意,删除层版本后,您将无法还原已删除的层版本。因此,请谨慎操作,并确保仔细验证要删除的层和版本号。