【问题标题】:Severless Error: The CloudFormation template is invalid: Template error: instance of Fn::GetAtt references undefined resource name-of-role无服务器错误:CloudFormation 模板无效:模板错误:Fn::GetAtt 实例引用未定义的资源名称角色
【发布时间】:2020-08-30 01:25:00
【问题描述】:

我正在尝试使用无服务器框架将服务部署到 AWS 并不断收到以下错误:Error: The CloudFormation template is invalid: Template error: instance of Fn::GetAtt references undefined resource dev-example

以下是我的 serverless.yml 文件的相关部分:

service: example 

provider:
  name: aws
  runtime: python3.7
  memorySize: 128
  logRetentionInDays: 1
  timeout: 300 
  role: ${opt:stage}-${self:service}

  resources:
    Resources:
      dev-example:
        Type: AWS::IAM::Role
        Properties:
          RoleName: ${opt:stage}-${self:service}-role
          AssumeRolePolicyDocument:
            Version: '2020-05-13'
            Statement:
              - Effect: Allow
                Principal:
                  Service:
                    - lambda.amazonaws.com
                Action: 'sts:AssumeRole' 
          ManagedPolicyArns:
            - arn:aws:iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole
            - arn:aws:iam::aws:policy/AmazonRDSDataFullAccess
            - arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess
            - arn:aws:iam::aws:policy/service-role/AWSLambdaRole
          Policies:
            - PolicyName: ${opt:stage}-${self:service}-policies
              PolicyDocument:
                Version: '2020-05-13'
                Statement:
                  - Effect: Allow
                    Action: 
                      - logs:CreateLogGroups
                      - logs:CreateLogStream
                      - logs:PutLogEvents
                    Resource:
                      - 'Fn::Join':
                        - ':'
                        -
                          - 'arn:aws:logs'
                          - Ref: 'AWS::Region'
                          - Ref: 'AWS::AccountId'
                          - 'log-group:/aws/lambda/*:*:*' 

任何有关导致此错误的原因的见解都会很棒!

自定义 IAM 角色的资源格式是使用此处的模板创建的:https://www.serverless.com/framework/docs/providers/aws/guide/iam/

【问题讨论】:

  • 您找到解决错误的方法了吗?我有类似的错误

标签: yaml amazon-iam serverless-framework serverless aws-serverless


【解决方案1】:

我建议看看 serverless-pseudo-parameters 插件,它可以帮助您简化其中一些 AWS 变量参数的配置,从而消除您遇到的错误

https://www.serverless.com/plugins/serverless-pseudo-parameters/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-10
    • 2021-10-25
    • 1970-01-01
    • 2021-11-21
    • 2019-04-26
    • 2021-11-12
    • 2021-08-07
    • 1970-01-01
    相关资源
    最近更新 更多