为什么S3桶没有被创建,虽然它是在SAM模板中提到的?



我试图在S3桶中创建一个函数代码的lambda函数。下面是我的模板。该模板创建lambda,但不创建前面提到的S3桶。我正在寻找通过此模板创建S3桶的帮助。

Resources:
ProducerLambda:
Type: 'AWS::Serverless::Function'
Properties:
FunctionName: !Sub '${ApplicationId}-${env}-Producer-Lambda-${AWS::AccountId}-${AWS::Region}'
Handler: index.handler
Runtime: nodejs14.x
CodeUri:
Bucket: s3bucket   
Key: s3bucketref.zip
Role: 'arn:aws:iam::${AWS::AccountId}:role/Producer-lambda-trigger-role' 
VpcConfig:
SecurityGroupIds: !Ref SecurityGroup
SubnetIds: !Ref VPCSubnetId
Environment:
Variables:
Region: !Sub '${AWS::Region}'

CodeUri用于指定函数代码的路径—这可以是Amazon S3 URI、本地文件夹的路径或FunctionCode对象。

不用于创建S3桶。

如果在s3bucket/s3bucketref.zip中不存在打包的功能,那么你必须自己创建桶并上传包。

或者,使用sam build将为您构建Lambda &sam deploy将自动为您创建一个S3桶:

通过AWS CloudFormation部署AWS Lambda函数需要一个Amazon Simple Storage Service (Amazon S3)桶作为Lambda部署包。AWS SAM CLI为您创建并管理Amazon S3桶。

后者管理起来简单得多。

相关内容

  • 没有找到相关文章

最新更新