簡體   English   中英

AWS Lambda 未使用 Terraform source_code_hash 屬性進行更新

[英]AWS Lambda not updating using Terraform source_code_hash property

我有一個用於創建 Lambda 資源的 Terraform 配置,我正在使用 source_code_hash 屬性來檢測對 zip 的更改。 我還將一個單獨的文件上傳到 S3,其中包含文件的 SHA256 哈希值以及 zip 文件。

我可以進行一次部署,但問題是在我更新 zip 后運行的 Lambda 沒有得到更新,並且在構建日志中我看到“仍在創建...”

如何查看 source_code_hash 屬性的值? 我只在計划輸出和應用輸出中看到 + source_code_hash = (known after apply),所以我不知道該值是否正在更新。

我的代碼如下:

data "aws_s3_object" "source_hash" {
  bucket = "dap-bucket-2"
  key    = "lambda.zip.sha256"
}

resource "aws_lambda_function" "lambda" { 
  function_name    = "lambda_function_name"
  s3_bucket        = "dap-bucket-2"
  s3_key           = "lambda.zip"
  handler = "template.handleRequest"
  runtime = "java11"
  role    = aws_iam_role.lambda_exec.arn
  source_code_hash = "${data.aws_s3_object.source_hash.body}"
  publish = true
} 

對於 s3 對象,通常你會使用etag

source_code_hash = data.aws_s3_object.source_hash.etag

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM