Skip to content

Proposal: AWS::Serverless::Queue #1571

Description

@timoschilling

Description:

Setting up an SQS Queue is sometimes more complicated than it needs to be.
Setting up an Queue should be done in the same DRY way it works for Lambdas.

Before example:

  Queue:
    Type: AWS::SQS::Queue
    Properties:
      RedrivePolicy:
        deadLetterTargetArn: !GetAtt DeadLetterQueue.Arn
        maxReceiveCount: 5

  DeadLetterQueue:
    Type: AWS::SQS::Queue

  QueuePolicy:
    Type: AWS::SQS::QueuePolicy
    Properties:
      Queues:
        - !Ref Queue
      PolicyDocument:
        Version: 2012-10-17
        Statement:
          - Effect: Allow
            Principal:
              AWS: '*'
            Action: SQS:SendMessage
            Resource: !GetAtt Queue.Arn
            Condition:
              ArnEquals:
                aws:SourceArn:
                  - !Ref SnsArn
                  - !GetAtt SomeResource.Arn

After Example:

  Queue:
    Type: AWS::Serverless::Queue
    Properties:
      DeadLetterQueue: true
      Sources:
         - Arn: !Ref SnsArn
         - Arn: !GetAtt SomeResource.Arn

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions