[英]aws lambda - How to add s3 trigger using cloudformation if the s3 bucket is created manually
我已經手動創建了我的 s3 存儲桶“myBucket”。
我需要一個帶 s3 觸發器的 lambda 函數。
"Parameters": {
"HandlerCodeS3Bucket": {
"Type": "String",
"Default": "myBucket"
},
},
"Resources": {
"uploadBannerToS3Handler": {
"Type": "AWS::Lambda::Function",
"Properties": {
"FunctionName": "uploadBannerToS3",
"Handler": "uploadBannerToS3.handler",
"Role": {
"Fn::ImportValue": {
"Fn::Sub": "${RolesStack}-LambdaRoleArn"
}
},
"Code": {
"S3Bucket": {
"Ref": "HandlerCodeS3Bucket"
},
"S3Key":"uploadBannerToS3.zip"
},
"Layers": [
{
"Ref": "MyLayer"
}
],
"Runtime": "nodejs12.x"
}
}
...
}
我應該如何修改代碼以在我的函數中添加 s3 觸發器。
另外,對於開發,如果我也在cloudformation中構建我的s3bucket是否更方便,如果我將來構建我的UAT環境?
如果使用 cloudformation,開發人員通常會如何處理 s3?
如果您手動創建了您的存儲桶,則您無法按照您嘗試的方式在 CloudFormation (CFN) 中使用它。 您要么必須將存儲桶的創建和管理留給 CFN,或者如果您確實需要,您可以將現有的存儲桶導入 CFN。
我仍然需要手動將我的 lambda zip 文件上傳到 s3,
是的。 CFN 不會為您上傳它,因為它無法訪問您的本地工作站。 但是 AWS CLI 具有諸如package 之類的命令可以使上傳過程更容易。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.