首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将AWS Lambda迁移到引力子属性体系结构(未定义)

将AWS Lambda迁移到引力子属性体系结构(未定义)
EN

Stack Overflow用户
提问于 2021-10-20 13:18:45
回答 1查看 300关注 0票数 0

我希望在我的AWS Lambda (Python)中使用引力子。所以我读了AWS的官方文档:https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html

代码语言:javascript
运行
复制
Type: AWS::Serverless::Function
Properties:
  Architectures: List

我的AWS包含一个层,所以我阅读了AWS的官方文档:https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-layerversion.html

代码语言:javascript
运行
复制
Type: AWS::Serverless::LayerVersion
Properties:
  CompatibleArchitectures: List

My cloudFormation:

代码语言:javascript
运行
复制
MyBulkUploadFunction:
    Type: AWS::Serverless::Function # More info about Function Resource: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
    Properties:
      FunctionName: !Sub ${Project}-my-bulk-upload-${Environment}
      Role: !Sub ${RoleLambda}
      CodeUri: lambdas/bulk_upload/
      Handler: app.lambda_handler
      Layers:
        - !Ref MyDataLayer
      Runtime: python3.9
      Architectures:
        - arm64
      VpcConfig: # For accessing RDS instance
        SecurityGroupIds:
          - !Ref LambdaSecurityGroup
        SubnetIds:
          - !Ref privateLambdaSubnet1
          - !Ref privateLambdaSubnet2
      Environment:
        Variables:
          RDS_HOST: !GetAtt DatabasePrimaryInstance.Endpoint.Address
          RDS_USERNAME: AWS::NoValue
          RDS_PASSWORD: AWS::NoValue
          RDS_SECRET_NAME: !Ref DatabasePrimaryInstanceSecret
          RDS_DB_NAME: !Ref RDSName
          BULK_UPLOAD_S3_BUCKET: !Sub ${Project}-my-bulk-upload-${Environment}
      Events:
        UploadFile:
          Type: S3
          Properties:
            Bucket: !Ref MyBulkUploadS3
            Events: s3:ObjectCreated:*


  MyDataLayer:
    Type: AWS::Serverless::LayerVersion
    Properties:
      LayerName: !Sub ${Project}-my-data-layer-${Environment}
      Description: Common
      ContentUri: lambdas/my_common/
      CompatibleRuntimes:
        - python3.9
      CompatibleArchitectures:
        - arm64
      RetentionPolicy: Retain
    Metadata:
      BuildMethod: makefile

错误控制台输出:

代码语言:javascript
运行
复制
samcli.commands.validate.lib.exceptions.InvalidSamDocumentException: [InvalidResourceException('MyBulkUploadFunction', 'property Architectures not defined for resource of type AWS::Serverless::Function'), InvalidResourceException('MyDataLayer', 'property CompatibleArchitectures not defined for resource of type AWS::Serverless::LayerVersion')] ('MyBulkUploadFunction', 'property Architectures not defined for resource of type AWS::Serverless::Function') ('MyDataLayer', 'property CompatibleArchitectures not defined for resource of type AWS::Serverless::LayerVersion')
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-20 14:06:45

重力子上的AWS Lambda需要AWS SAM CLI版本大于或等于1.33.0

代码语言:javascript
运行
复制
sam --version
SAM CLI, version 1.33.0
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69646738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档