[英]How can I identify that an AWS Lambda was created using the AWS CDK?
我正在尋找一種方法來識別 AWS Lambda 是使用 AWS CDK 配置的。 是否有標簽或其他類型的元數據來識別這一點? SAM 提供了一個標簽lambda_createdBy:SAM
。 我可以自己添加一個標簽,但對於一個已經配置了數千個 Lambda 的組織,識別這需要更改所有這些的代碼。
AFAIK CDK 不添加任何特殊的 CDK 特定標簽。 我相信某些資源會自動標記為 CF 模板,但它們是其中的一部分,所以就是這樣。
您可以編寫一個CDK 方面,將標簽添加到應用程序中的任何 lambda 函數,而不是全面修改代碼。
就像是:
class FunctionTagger implements IAspect {
public visit(node: IConstruct): void {
if (node instanceof lambda.Function) {
Tags.add('myTag', 'myValue', node)
}
}
}
// Apply to the stack
stack.node.applyAspect(new FunctionTagger());
CDK 部署的 Lambda func 將傳播具有密鑰aws:cloudformation:stack-name
的標簽。
然后您可以檢查是否有名為CDKMetadata
資源的堆棧。 例如,
aws cloudformation describe-stack-resource --stack-name my-stack-name --logical-resource-id CDKMetadata
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.