作者:Yvette-XY | 来源:互联网 | 2022-11-25 13:08
到目前为止,我一直在使用CloudFormation来部署我的lambda.我发现这个过程非常缓慢且效率低下 - 例如.它可能需要几分钟但如果只是部署那个1功能它应该只需几秒钟?大多数功能都没有改变,但我相信CloudFormation无法区分,无论如何都会部署一切.有没有办法可以更有效地做到这一点?比如查看已更改的内容并仅部署更改?
另一个好处是我可能会有更少的版本?
1> ydaetskcoR..:
您可以使用source_code_hash
的的aws_lambda_function
资源,如果lambda函数变为有Terraform检查。如果没有任何变化,那么它将不会上传新版本,并且您的计划不会显示任何更改。
这是在docs中作为示例给出的:
resource "aws_lambda_function" "test_lambda" {
filename = "lambda_function_payload.zip"
function_name = "lambda_function_name"
role = "${aws_iam_role.iam_for_lambda.arn}"
handler = "exports.test"
source_code_hash = "${base64sha256(file("lambda_function_payload.zip"))}"
runtime = "nodejs8.10"
environment {
variables = {
foo = "bar"
}
}
}