savvamadar
savvamadar

Reputation: 294

Serverless Deploy - LogicalResourceId

I have the following serverless.yml file:

https://pastebin.com/9V6AY13e

Whenever I deploy it I get the following error:

`Expected params.LogicalResourceId to be a string`

Googling this error brings up one or two threads that I don't think are relevant to the reason I'm getting this error.

Upvotes: 2

Views: 196

Answers (2)

Niv-Mizzet
Niv-Mizzet

Reputation: 371

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

The following syntax should work:

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

or

targetArn:
  Fn::GetAtt:
    - DeadLetterSenderLoader
    - Arn

Upvotes: 0

savvamadar
savvamadar

Reputation: 294

Turns out the following lines:

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

Needed to be:

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

Upvotes: 1

Related Questions