首页 > 解决方案 > 无服务器应用程序规范文档无效。发现的错误数:2. ID 为 [**] 的资源无效。属性“角色”的类型无效

问题描述

我在 aws cloudformation 中遇到以下错误

转换 AWS::Serverless-2016-10-31 失败,原因是:无服务器应用程序规范文档无效。发现的错误数:2. ID 为 [AbortMultipartUpload] 的资源无效。属性“角色”的类型无效。ID 为 [CompleteMultipartUpload] 的资源无效。属性“角色”的类型无效。用户请求回滚。

文档.yaml

  CompleteMultipartUpload:
    Type: AWS::Serverless::Function
    DependsOn: RolesStack
    Properties:
      FunctionName: !Sub ${Prefix}-doc-CompleteMultipartUpload-lmd
      Handler: main
      Runtime: go1.x
      CodeUri: ../../Lambdas/Go/CompleteMultipartUpload
      AutoPublishAlias: !Ref Prefix
      DeploymentPreference:
        Type: AllAtOnce
      Description: 'Function to complete the multipart upload in document bucket'
      MemorySize: 128
      Role:
        - Fn::ImportValue:
            !Sub ${Prefix}-doc-CompleteMultipartUploadRoleArn```

Role ${Prefix}-doc-CompleteMultipartUploadRoleArn i was exported from RolesStack.yaml

标签: amazon-web-servicesaws-lambdaamazon-cloudformationaws-api-gateway

解决方案


角色应该只是String,不是一个Array。所以你应该有:

      Role: 
        Fn::ImportValue:
            !Sub ${Prefix}-doc-CompleteMultipartUploadRoleArn

推荐阅读