簡體   English   中英

如何自動將s3的jar部署到AWS Lambda?

[英]How to automatically deploy a jar from s3 to aws lambda?

每當s3 bucket jar的版本發生任何變化時,我都希望自動將jar部署到aws-lamda

例如:有一個S3 bucketlambdadeploytest和一個autoDeployTest Lamda function名稱autoDeployTest 我在lambdadeploytest存儲了一個對象test.jar

每當我上載對象test.jar 的新版本時, test.jar將自動部署autoDeployTest lambda函數。

您可以使用lambda函數來做到這一點...
在高層次上,步驟是

  • 創建一個lambda函數,該函數將下載test.jar並使用jar創建/更新autoDeployTest lambda函數。

  • 配置在S3上修改test.jar時要觸發的新lambda函數

  • 配置具有權限的新lambda函數以讀取S3存儲桶並在Lambda上部署代碼。

您可以按照本教程來創建由S3事件觸發的lambda函數。 這是您的lambda函數可以調用以更新autodeployTest代碼的Lambda API

偽代碼將如下所示:

read JSON event object to get the bucket name and object name (bucket_name, test.jar)

download a copy of the object (test.jar) to the lambda container 

(do additional check on the jar file if required) 

call Lambda's UpdateFunctionCode to update autoDeployTest function code with the jar.

最慣用的方法是在將新的JAR文件上傳到S3之后觸發部署。 Lambda本身不會為您處理此事,除非您計划為此目的使用另一個Lambda(我個人不會)。

對我來說,您還不清楚用於上傳JAR文件的內容-如果是Terraform,那將是一種解決方法。 如果您使用AWS CLI上傳了新版本的JAR文件,則可以使用同一工具來觸發Lambda部署。

暫無
暫無

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

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