簡體   English   中英

如何在 terraform lambda 代碼中引用上傳到 s3 存儲桶中的 zip 文件?

[英]How to reference a zip file uploaded in an s3 bucket in your terraform lambda code?

我正在處理一個項目,其中已經通過控制台創建了 aws 中的 s3 存儲桶,並且 lambda 代碼已經作為 object 存在。 我正在創建一個 terraform 腳本,我將在其中引用 zip,然后創建一個 lambda ZC1C425268E68385D11 和 57itAB7A。 如果在代碼中檢測到任何更改(代碼 zip 可以從控制台更改),那么它應該發布最新版本。 我怎樣才能做到這一點? 目前我遇到了錯誤-

module "student_lambda"{
source = "https://....." // I'm using a template which creates lambda function
handler..
s3_bucket = "SaintJoseph"
s3_key = "grade5/studentlist.zip"
source_code_hash = filebase64sha256("/grade5/studentlist.zip").etag
.....
}

我的桶結構

SaintJoseph——存儲桶名

  • 5級
    • 學生名單.zip
    • 主題列表.zip
  • 6年級

我在計划中遇到的錯誤 -

  1. function 調用出錯 - 調用 function filebase64sha256 失敗:打開 Grade5/studentlist.zip:沒有這樣的文件或目錄

  2. 存儲桶鍵或源無效。

有人也可以幫助讓我知道要使用什么,例如 etag/source_code_hash 等,以便僅在 zip 文件更改時才需要更改以及如何刪除現有錯誤?

filebase64sha256僅適用於本地文件系統。 要引用 s3 object 的 etag,您必須使用aws_s3_object數據源。 源返回etag

暫無
暫無

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

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