无服务器部署 - LogicalResourceId

Serverless Deploy - LogicalResourceId

我有以下 serverless.yml 文件:

https://pastebin.com/9V6AY13e

每当我部署它时,我都会收到以下错误:

`Expected params.LogicalResourceId to be a string`

谷歌搜索此错误会出现一两个线索,我认为这些线索与我收到此错误的原因无关。

结果如下:

deadLetter:
  targetArn:
    GetResourceArn:
      arn:
        Fn::GetAtt:
         - DeadLetterSenderLoader
         - Arn

需要:

deadLetter:
  targetArn: 'arn:${self:provider.name}:sqs:${self:provider.region}:${self:provider.accountId}:DeadLetterSenderLoader'

AWS::SQS::Queue resource has Arn in return values so it can be accessed by Fn::GetAtt intrinsic function

以下语法应该有效:

targetArn:
  Fn::GetAtt: [DeadLetterSenderLoader, Arn]

targetArn:
  Fn::GetAtt:
    - DeadLetterSenderLoader
    - Arn