From a09eda23296533966289454600f45fb5dc2fc6a8 Mon Sep 17 00:00:00 2001 From: "dec.kolakowski" Date: Mon, 2 Sep 2024 10:26:02 +0100 Subject: [PATCH 1/4] feat: add AsyncAPI V3 compatible SQS binding definitions --- sqs/{ => 2.x.x}/README.md | 0 sqs/{ => 2.x.x}/SNS-SQS-Pub-Sub.png | Bin sqs/{ => 2.x.x}/SQS-Point-To-Point.png | Bin sqs/3.0.0/README.md | 257 +++++++++++++++++++++++++ sqs/3.0.0/SNS-SQS-Pub-Sub.png | Bin 0 -> 47278 bytes sqs/3.0.0/SQS-Point-To-Point.png | Bin 0 -> 37204 bytes 6 files changed, 257 insertions(+) rename sqs/{ => 2.x.x}/README.md (100%) rename sqs/{ => 2.x.x}/SNS-SQS-Pub-Sub.png (100%) rename sqs/{ => 2.x.x}/SQS-Point-To-Point.png (100%) create mode 100644 sqs/3.0.0/README.md create mode 100644 sqs/3.0.0/SNS-SQS-Pub-Sub.png create mode 100644 sqs/3.0.0/SQS-Point-To-Point.png diff --git a/sqs/README.md b/sqs/2.x.x/README.md similarity index 100% rename from sqs/README.md rename to sqs/2.x.x/README.md diff --git a/sqs/SNS-SQS-Pub-Sub.png b/sqs/2.x.x/SNS-SQS-Pub-Sub.png similarity index 100% rename from sqs/SNS-SQS-Pub-Sub.png rename to sqs/2.x.x/SNS-SQS-Pub-Sub.png diff --git a/sqs/SQS-Point-To-Point.png b/sqs/2.x.x/SQS-Point-To-Point.png similarity index 100% rename from sqs/SQS-Point-To-Point.png rename to sqs/2.x.x/SQS-Point-To-Point.png diff --git a/sqs/3.0.0/README.md b/sqs/3.0.0/README.md new file mode 100644 index 00000000..a7d26560 --- /dev/null +++ b/sqs/3.0.0/README.md @@ -0,0 +1,257 @@ +# SQS Bindings + +This document defines how to describe SQS-specific information on AsyncAPI. + +SQS can be used both stand-alone as a point-to-point and paired with SNS and as a send-receive (more commonly referred to as pubsub in SNS/SQS nomenclature) channel (where SQS is the endpoint that SNS delivers messages to). For this reason we define a Queue schema, and reference that schema from both a Channel Binding Object and a Operation Binding Object. + +For point-to-point scenarios, use the Channel Binding Object, as producers send to the queue and consumers receive from it directly. + +For publish-subscribe scenarios, use as a Operation Binding Object with a `send` action, as the producer sends to SNS and the consumer receives via SQS. + + + +## Version + +Current version is `0.3.0`. + + + +## Server Binding Object + +This object MUST NOT contain any properties. Its name is reserved for future use. + + + +## Channel Binding Object + +Use the Channel Binding Operation for Point-to-Point SQS channels. + +There are three likely scenarios for use of the Channel Binding Object: + +- One file defines both send and receive operations, for example if we were implementing the work queue pattern to offload work from an HTTP API endpoint to a worker process. In this case the channel would be defined on the Channel Object in that single file. +- The producer and consumer both have an AsyncAPI specification file, and the producer is raising an event, for example interop between microservices, and the producer 'owns' the channel definition and thus has the SQS Binding on its Channel Object. +- The producer and consumer both have an AsyncAPI specification file, and the consumer receives commands, for example interop between microservices, and the consumer 'owns' the channel definition and thus has the SQS Binding on its Channel Object. + +An SQS queue can set up a Dead Letter Queue as part of a Redelivery Policy. To support this requirement, the Channel Binding Object allows you to define both a Queue Object to use as the Channel or target in a *send* Operation and a Dead Letter Queue. You can then refer to the Dead letter Queue in the Redrive Policy using the Identifier Object and setting the *name* field to match the *name* field of your Dead Letter Queue Object. (If you define the DLQ externally, the Identifier also supports an ARN). + +### Fields +|Field Name | Type | Description| +|---|:---:|---| +| `queue` | [Queue](#queue)| **Required.** A definition of the queue that will be used as the channel. | +| `deadLetterQueue` | [Queue](#queue)| **Optional.** A definition of the queue that will be used for un-processable messages. | +|`bindingVersion` | string | **Optional**, defaults to `latest`. The version of this binding.| + +### Schemas + +#### Queue +|Field Name | Type | Description| +|---|:---:|---| +| `name` | string | **Required.** The name of the queue. When an [SNS Operation Binding Object]() references an SQS queue by name, the identifier should be the one in this field.| +| `fifoQueue` | boolean | **Required.** Is this a FIFO queue? | +| `deduplicationScope` | string | **Optional.** Specifies whether message deduplication occurs at the message group or queue level. Valid values are `messageGroup` and `queue`. **This property applies only to high throughput for FIFO queues.** | +| `fifoThroughputLimit` | string | **Optional.** Specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. Valid values are `perQueue` and `perMessageGroupId`. **The `perMessageGroupId` value is allowed only when the value for DeduplicationScope is `messageGroup`. Setting both these values as such will enable high throughput on a FIFO queue. As above, this property applies only to high throughput for FIFO queues.** | +| `deliveryDelay` | integer | **Optional.** The number of seconds to delay before a message sent to the queue can be received. Used to create a *delay queue*. Range is 0 to 15 minutes. Defaults to 0. | +| `visibilityTimeout` |integer| **Optional.** The length of time, in seconds, that a consumer locks a message - hiding it from reads - before it is unlocked and can be read again. Range from 0 to 12 hours (43200 seconds). Defaults to 30 seconds. | +| `receiveMessageWaitTime` |integer| **Optional.** Determines if the queue uses [short polling](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-short-and-long-polling.html) or [long polling](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-short-and-long-polling.html). Set to zero (the default) the queue reads available messages and returns immediately. Set to a non-zero integer, long polling waits the specified number of seconds for messages to arrive before returning. | +| `messageRetentionPeriod` |integer| **Optional.** How long to retain a message on the queue in seconds, unless deleted. The range is 60 (1 minute) to 1,209,600 (14 days). The default is 345,600 (4 days). | +| `redrivePolicy` | [Redrive Policy](#redrive-policy) | **Optional.** Prevent poison pill messages by moving un-processable messages to an SQS dead letter queue.| +| `policy` |[Policy](#policy) | **Optional.** The security policy for the SQS Queue | +| `tags` |Object | **Optional.** Key-value pairs that represent AWS tags on the queue. | + +#### Identifier +|Field Name | Type | Description| +|---|:---:|---| +|`arn` |string| **Optional.** The target is an [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). For example, for SQS, the identifier may be an ARN, which will be of the form: ["arn:aws:sqs:{region}:{account-id}:{queueName}"](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)| +|`name` |string| **Optional.** The endpoint is identified by a name, which corresponds to an identifying field called 'name' of a binding for that protocol on this **send** Operation Object. For example, if the protocol is 'sqs' then the name refers to the name field **sqs** binding| + +#### Policy +|Field Name | Type | Description| +|---|:---:|---| +| `Statements` | [Statement](#statement) | **Required.** An array of Statement objects, each of which controls a permission for this queue. | + +#### Redrive Policy +|Field Name | Type | Description| +|---|:---:|---| +| `deadLetterQueue` |[Identifier](#identifier)| The SQS queue to use as a dead letter queue (DLQ) | +| `maxReceiveCount` |integer| **Optional.** The number of times a message is delivered to the source queue before being moved to the dead-letter queue. Default is 10. | + +#### Statement +|Field Name | Type | Description| +|---|:---:|---| +| `effect` | string |**Required.** Either "Allow" or "Deny"| +| `principal` | string or AWS principal property containing a string or string array |**Required.** The AWS account(s) or resource ARN(s) that the statement applies to| +| `action` | string or array of string |**Required.** The SNS permission being allowed or denied e.g. sns:Publish| +| `resource` | string or array of string |**Optional.** The resource(s) that this policy applies to| +| `condition` | object or list of objects |**Optional.** Specific circumstances under which the policy grants permission| + + + + +## Operation Binding Object + +### SQS Point-To-Point + +Because we have defined Queue as part of the Channel Binding Binding object, we do not require Binding information for the **send** Operation Object of the **receive** Operation Object. You can use an empty Queue object ({}) to denote the Binding on the Operation Object, if you want to indicate the protocol used to send or receive for generation purposes such as Infrastructure As Code. + +### SNS to SQS Pub-Sub + +Use the Operation Binding Object when SQS is listening to an SNS Topic. In this case we need to define both an SQS Operation Binding Objects on the receiver **send** Operation Object to represent the queue definition and we need to define an SNS Operation Binding Object to define the Subscription to SNS that makes your queue a receiver of that endpoint. + +Assuming you have separate AsyncAPI specifications for the producer and the consumer, we would assume the following bindings would appear for an SNS producer and an SQS consumer. + +Producer: SNS Channel Binding Object, SNS **receive** Operation Binding Object [if required] +Consumer: SNS **send** Operation Binding Object, SQS **send** Operation Binding Object + +- We assume that the SNS binding information only needs to be present in the producer file (although defining it in both is allowable) and any infrastructure as code dependencies can recognize this. + + +On an Operation Binding Object we support an array of Queue objects. Members of this array may be Queue Objects that define the *endpoint* field required by an [SNS Operation Object]() delivering by the SQS protocol or Queue Objects that define the Dead Letter Queue used by either the Redrive Policy of the SNS Subscription (see the SNS Binding Object) or the [Redrive Policy of the SQS Queue](#redrive-policy). The name of the Queue Object is used by an Identifier field on either the *endpoint* field of the SNS Operation Object of *deadLetterQueue* on the Redrive Policy to identify the required member of this array. + + +### Fields +|Field Name | Type | Description| +|---|:---:|---| +| `queues` | [[Queue](#queue)]| **Required.** Queue objects that are either the *endpoint* for an SNS Operation Binding Object, or the *deadLetterQueue* of the SQS Operation Binding Object | +|`bindingVersion` | string | **Optional**, defaults to `latest`. The version of this binding.| + +### Examples + +#### SQS Point-To-Point + +[](SQS-Point-To-Point.png) + +In this example, we are using SQS for a point-to-point channel. For this example, we assume that we are defining two microservices that communicate over a shared SQS channel, with the consumer receiving events over that channel and the producer owning the channel definition. + +The producer file would look like this: + +```yaml +channels: + userSignedup: + bindings: + sqs: + queue: + name: user-signedup-queue + fifoQueue: false + receiveMessageWaitTime: 4 + redrivePolicy: + deadLetterQueue: + name: user-signedup-dlq + policy: + statements: + - effect : Allow + principal: * + action: Sqs:SendMessage + - effect : Allow + principal: * + action: Sqs:ReceiveMessage + deadLetterQueue: + name: user-signedup-dlq + messageRetentionPeriod: 1209600 + fifoQueue: false +operations: + userSignedUp: + action: send + operationId: sendMessage + description: sends messages when a user has signed up + bindings: + sqs: {} + channel: + $ref: '#/channels/userSignedUp' + +``` +In this case we can minimize duplicated information by omitting the binding in our specification, and assume it is picked up from the producer file. We can use an empty object to indicate the SQS Binding on the **send** Operation Object, if need a marker for generation, otherwise we could omit the Operation Binding Object. + +```yaml +operations: + userSignedup: + action: receive + operationId: receiveMessage + description: receives a messages when a user has signed up + bindings: + sqs: {} + channel: + $ref: '#/channels/userSignedUp' + +``` + +#### SNS to SQS Pub-Sub + +[](SNS-SQS-Pub-Sub.png) + +In this example, we are using SNS for the channel, and SQS to receive from SNS. + + +The producer files looks like this (see the [SNS Binding]() for more). + +```yaml +channels: + userSignedup: + bindings: + sqs: {} # Indicates that the channel is an SNS Topic +operations: + userSignedUp: + action: send + operationId: sendMessage + description: send messages to the topic + bindings: + sns: + policy: + statements: + - effect : Allow + principal: * + action: SNS:Publish + channel: + $ref: '#/channels/userSignedUp' +``` + +And the consumer file would look like this. Note that for simplicity, we choose not to repeat the SNS Binding on the Consumer as it does not 'own' the channel. + + +```yaml +channels: + userSignedup: + description: A user has signed up for our service +operations: + userSignedup: + action: receive + operationId: receiveMessage + description: receive messages from the topic + bindings: + sns: + consumers: + - protocol: sqs + endpoint: + name: user-signedup-queue + rawMessageDelivery: true + filterPolicy: + attributes: + reason: + anything-but: password-reset + redrivePolicy: + deadLetterQueue: + name: user-signedup-queue-dlq + sqs: + queues: + - name: user-signedup-queue + fifoQueue: false + receiveMessageWaitTime: 4 + policy: + statements: + - effect : Allow + principal: * + action: Sqs:SendMessage + - effect : Allow + principal: * + action: Sqs:ReceiveMessage + - name: user-signedup-dlq + messageRetentionPeriod: 1209600 + fifoQueue: false + channel: + $ref: '#/channels/userSignedUp' +``` + + + +## Message Binding Object + +This object MUST NOT contain any properties. Its name is reserved for future use. diff --git a/sqs/3.0.0/SNS-SQS-Pub-Sub.png b/sqs/3.0.0/SNS-SQS-Pub-Sub.png new file mode 100644 index 0000000000000000000000000000000000000000..033d6de7f4b827bc0f53502991fb486a087b3931 GIT binary patch literal 47278 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 Q7T||5IcxkFeI@Dt02psn>Hq)$ literal 0 HcmV?d00001 diff --git a/sqs/3.0.0/SQS-Point-To-Point.png b/sqs/3.0.0/SQS-Point-To-Point.png new file mode 100644 index 0000000000000000000000000000000000000000..a94cfc7b95d2781110ce82cd453c21bf43e30499 GIT binary patch literal 37204 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 literal 0 HcmV?d00001 From 30131f1fa2324ba0405fe01fb4f687aa9bca7ea6 Mon Sep 17 00:00:00 2001 From: "dec.kolakowski" Date: Mon, 2 Sep 2024 10:28:22 +0100 Subject: [PATCH 2/4] feat: fix inlining --- sqs/3.0.0/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sqs/3.0.0/README.md b/sqs/3.0.0/README.md index a7d26560..218abb0f 100644 --- a/sqs/3.0.0/README.md +++ b/sqs/3.0.0/README.md @@ -147,7 +147,7 @@ channels: deadLetterQueue: name: user-signedup-dlq messageRetentionPeriod: 1209600 - fifoQueue: false + fifoQueue: false operations: userSignedUp: action: send From ca6c3ca55f7731d93c4c8698bab97a30e2563a95 Mon Sep 17 00:00:00 2001 From: "dec.kolakowski" Date: Mon, 20 Jan 2025 09:43:24 +0000 Subject: [PATCH 3/4] feat: remove v2 versions --- sqs/2.x.x/README.md | 244 ------------------------------- sqs/2.x.x/SNS-SQS-Pub-Sub.png | Bin 47278 -> 0 bytes sqs/2.x.x/SQS-Point-To-Point.png | Bin 37204 -> 0 bytes sqs/3.0.0/README.md | 2 +- 4 files changed, 1 insertion(+), 245 deletions(-) delete mode 100644 sqs/2.x.x/README.md delete mode 100644 sqs/2.x.x/SNS-SQS-Pub-Sub.png delete mode 100644 sqs/2.x.x/SQS-Point-To-Point.png diff --git a/sqs/2.x.x/README.md b/sqs/2.x.x/README.md deleted file mode 100644 index b95d81f0..00000000 --- a/sqs/2.x.x/README.md +++ /dev/null @@ -1,244 +0,0 @@ -# SQS Bindings - -This document defines how to describe SQS-specific information on AsyncAPI. - -SQS can be used both stand-alone as a point-to-point and paired with SNS and as a publish-subscribe channel (where SQS is the endpoint that SNS delivers messages to). For this reason we define a Queue schema, and reference that schema from both a Channel Binding Object and a **publish** Operation Binding Object. - -For point-to-point scenarios, use the Channel Binding Object, as producers send to the queue and consumers receive from it directly. - -For publish-subscribe scenarios, use as a **publish** Operation Binding Object, as the producer sends to SNS and the consumer receives via SQS. - - - -## Version - -Current version is `0.3.0`. - - - -## Server Binding Object - -This object MUST NOT contain any properties. Its name is reserved for future use. - - - -## Channel Binding Object - -Use the Channel Binding Operation for Point-to-Point SQS channels. - -There are three likely scenarios for use of the Channel Binding Object: - -- One file defines both publish and subscribe operations, for example if we were implementing the work queue pattern to offload work from an HTTP API endpoint to a worker process. In this case the channel would be defined on the Channel Object in that single file. -- The producer and consumer both have an AsyncAPI specification file, and the producer is raising an event, for example interop between microservices, and the producer 'owns' the channel definition and thus has the SQS Binding on its Channel Object. -- The producer and consumer both have an AsyncAPI specification file, and the consumer receives commands, for example interop between microservices, and the consumer 'owns' the channel definition and thus has the SQS Binding on its Channel Object. - -An SQS queue can set up a Dead Letter Queue as part of a Redelivery Policy. To support this requirement, the Channel Binding Object allows you to define both a Queue Object to use as the Channel or target in a *publish* Operation and a Dead Letter Queue. You can then refer to the Dead letter Queue in the Redrive Policy using the Identifier Object and setting the *name* field to match the *name* field of your Dead Letter Queue Object. (If you define the DLQ externally, the Identifier also supports an ARN). - -### Fields -|Field Name | Type | Description| -|---|:---:|---| -| `queue` | [Queue](#queue)| **Required.** A definition of the queue that will be used as the channel. | -| `deadLetterQueue` | [Queue](#queue)| **Optional.** A definition of the queue that will be used for un-processable messages. | -|`bindingVersion` | string | **Optional**, defaults to `latest`. The version of this binding.| - -### Schemas - -#### Queue -|Field Name | Type | Description| -|---|:---:|---| -| `name` | string | **Required.** The name of the queue. When an [SNS Operation Binding Object]() references an SQS queue by name, the identifier should be the one in this field.| -| `fifoQueue` | boolean | **Required.** Is this a FIFO queue? | -| `deduplicationScope` | string | **Optional.** Specifies whether message deduplication occurs at the message group or queue level. Valid values are `messageGroup` and `queue`. **This property applies only to high throughput for FIFO queues.** | -| `fifoThroughputLimit` | string | **Optional.** Specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. Valid values are `perQueue` and `perMessageGroupId`. **The `perMessageGroupId` value is allowed only when the value for DeduplicationScope is `messageGroup`. Setting both these values as such will enable high throughput on a FIFO queue. As above, this property applies only to high throughput for FIFO queues.** | -| `deliveryDelay` | integer | **Optional.** The number of seconds to delay before a message sent to the queue can be received. Used to create a *delay queue*. Range is 0 to 15 minutes. Defaults to 0. | -| `visibilityTimeout` |integer| **Optional.** The length of time, in seconds, that a consumer locks a message - hiding it from reads - before it is unlocked and can be read again. Range from 0 to 12 hours (43200 seconds). Defaults to 30 seconds. | -| `receiveMessageWaitTime` |integer| **Optional.** Determines if the queue uses [short polling](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-short-and-long-polling.html) or [long polling](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-short-and-long-polling.html). Set to zero (the default) the queue reads available messages and returns immediately. Set to a non-zero integer, long polling waits the specified number of seconds for messages to arrive before returning. | -| `messageRetentionPeriod` |integer| **Optional.** How long to retain a message on the queue in seconds, unless deleted. The range is 60 (1 minute) to 1,209,600 (14 days). The default is 345,600 (4 days). | -| `redrivePolicy` | [Redrive Policy](#redrive-policy) | **Optional.** Prevent poison pill messages by moving un-processable messages to an SQS dead letter queue.| -| `policy` |[Policy](#policy) | **Optional.** The security policy for the SQS Queue | -| `tags` |Object | **Optional.** Key-value pairs that represent AWS tags on the queue. | - -#### Identifier -|Field Name | Type | Description| -|---|:---:|---| -|`arn` |string| **Optional.** The target is an [ARN](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html). For example, for SQS, the identifier may be an ARN, which will be of the form: ["arn:aws:sqs:{region}:{account-id}:{queueName}"](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)| -|`name` |string| **Optional.** The endpoint is identified by a name, which corresponds to an identifying field called 'name' of a binding for that protocol on this **publish** Operation Object. For example, if the protocol is 'sqs' then the name refers to the name field **sqs** binding| - -#### Policy -|Field Name | Type | Description| -|---|:---:|---| -| `Statements` | [Statement](#statement) | **Required.** An array of Statement objects, each of which controls a permission for this queue. | - -#### Redrive Policy -|Field Name | Type | Description| -|---|:---:|---| -| `deadLetterQueue` |[Identifier](#identifier)| The SQS queue to use as a dead letter queue (DLQ) | -| `maxReceiveCount` |integer| **Optional.** The number of times a message is delivered to the source queue before being moved to the dead-letter queue. Default is 10. | - -#### Statement -|Field Name | Type | Description| -|---|:---:|---| -| `effect` | string |**Required.** Either "Allow" or "Deny"| -| `principal` | string or AWS principal property containing a string or string array |**Required.** The AWS account(s) or resource ARN(s) that the statement applies to| -| `action` | string or array of string |**Required.** The SNS permission being allowed or denied e.g. sns:Publish| -| `resource` | string or array of string |**Optional.** The resource(s) that this policy applies to| -| `condition` | object or list of objects |**Optional.** Specific circumstances under which the policy grants permission| - - - - -## Operation Binding Object - -### SQS Point-To-Point - -Because we have defined Queue as part of the Channel Binding Binding object, we do not require Binding information for the **publish** Operation Object of the **subscribe** Operation Object. You can use an empty Queue object ({}) to denote the Binding on the Operation Object, if you want to indicate the protocol used to send or receive for generation purposes such as Infrastructure As Code. - -### SNS to SQS Pub-Sub - -Use the Operation Binding Object when SQS is listening to an SNS Topic. In this case we need to define both an SQS Operation Binding Objects on the receiver **publish** Operation Object to represent the queue definition and we need to define an SNS Operation Binding Object to define the Subscription to SNS that makes your queue a receiver of that endpoint. - -Assuming you have separate AsyncAPI specifications for the producer and the consumer, we would assume the following bindings would appear for an SNS producer and an SQS consumer. - -Producer: SNS Channel Binding Object, SNS **subscribe** Operation Binding Object [if required] -Consumer: SNS **publish** Operation Binding Object, SQS **publish** Operation Binding Object - -- We assume that the SNS binding information only needs to be present in the producer file (although defining it in both is allowable) and any infrastructure as code dependencies can recognize this. - - -On an Operation Binding Object we support an array of Queue objects. Members of this array may be Queue Objects that define the *endpoint* field required by an [SNS Operation Object]() delivering by the SQS protocol or Queue Objects that define the Dead Letter Queue used by either the Redrive Policy of the SNS Subscription (see the SNS Binding Object) or the [Redrive Policy of the SQS Queue](#redrive-policy). The name of the Queue Object is used by an Identifier field on either the *endpoint* field of the SNS Operation Object of *deadLetterQueue* on the Redrive Policy to identify the required member of this array. - - -### Fields -|Field Name | Type | Description| -|---|:---:|---| -| `queues` | [[Queue](#queue)]| **Required.** Queue objects that are either the *endpoint* for an SNS Operation Binding Object, or the *deadLetterQueue* of the SQS Operation Binding Object | -|`bindingVersion` | string | **Optional**, defaults to `latest`. The version of this binding.| - -### Examples - -#### SQS Point-To-Point - -[](SQS-Point-To-Point.png) - -In this example, we are using SQS for a point-to-point channel. For this example, we assume that we are defining two microservices that communicate over a shared SQS channel, with the consumer receiving events over that channel and the producer owning the channel definition. - -The producer file would look like this: - -```yaml -channels: - user-signedup: - bindings: - sqs: - queue: - name: user-signedup-queue - fifoQueue: false - receiveMessageWaitTime: 4 - redrivePolicy: - deadLetterQueue: - name: user-signedup-dlq - policy: - statements: - - effect : Allow - principal: * - action: Sqs:SendMessage - - effect : Allow - principal: * - action: Sqs:ReceiveMessage - deadLetterQueue: - name: user-signedup-dlq - messageRetentionPeriod: 1209600 - fifoQueue: false - subscribe: - operationId: sendMessage - description: sends messages when a user has signed up - bindings: - sqs: {} - -``` -In this case we can minimize duplicated information by omitting the binding in our specification, and assume it is picked up from the producer file. We can use an empty object to indicate the SQS Binding on the **publish** Operation Object, if need a marker for generation, otherwise we could omit the Operation Binding Object. - -```yaml -channels: - user-signedup: - publish: - operationId: receiveMessage - description: receives a messages when a user has signed up - bindings: - sqs: {} - -``` - -#### SNS to SQS Pub-Sub - -[](SNS-SQS-Pub-Sub.png) - -In this example, we are using SNS for the channel, and SQS to receive from SNS. - - -The producer files looks like this (see the [SNS Binding]() for more). - -```yaml -channels: - user-signedup: - description: A user has signed up for our service - binding : - sns: {} # Indicates that the channel is an SNS Topic - subscribe: - operationId: sendMessage - description: send messages to the topic - bindings: - sns: - policy: - statements: - - effect : Allow - principal: * - action: SNS:Publish -``` - -And the consumer file would look like this. Note that for simplicity, we choose not to repeat the SNS Binding on the Consumer as it does not 'own' the channel. - - -```yaml -channels: - user-signedup: - description: A user has signed up for our service - publish: - operationId: receiveMessage - description: receive messages from the topic - bindings: - sns: - consumers: - - protocol: sqs - endpoint: - name: user-signedup-queue - rawMessageDelivery: true - filterPolicy: - attributes: - reason: - anything-but: password-reset - redrivePolicy: - deadLetterQueue: - name: user-signedup-queue-dlq - sqs: - queues: - - name: user-signedup-queue - fifoQueue: false - receiveMessageWaitTime: 4 - policy: - statements: - - effect : Allow - principal: * - action: Sqs:SendMessage - - effect : Allow - principal: * - action: Sqs:ReceiveMessage - - name: user-signedup-dlq - messageRetentionPeriod: 1209600 - fifoQueue: false -``` - - - -## Message Binding Object - -This object MUST NOT contain any properties. Its name is reserved for future use. diff --git a/sqs/2.x.x/SNS-SQS-Pub-Sub.png b/sqs/2.x.x/SNS-SQS-Pub-Sub.png deleted file mode 100644 index 033d6de7f4b827bc0f53502991fb486a087b3931..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47278 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 Q7T||5IcxkFeI@Dt02psn>Hq)$ diff --git a/sqs/2.x.x/SQS-Point-To-Point.png b/sqs/2.x.x/SQS-Point-To-Point.png deleted file mode 100644 index a94cfc7b95d2781110ce82cd453c21bf43e30499..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37204 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 diff --git a/sqs/3.0.0/README.md b/sqs/3.0.0/README.md index 218abb0f..f4c5c8a2 100644 --- a/sqs/3.0.0/README.md +++ b/sqs/3.0.0/README.md @@ -12,7 +12,7 @@ For publish-subscribe scenarios, use as a Operation Binding Object with a `send` ## Version -Current version is `0.3.0`. +Current version is `0.4.0`. From 23b85e25174583bbac2805eb9fb92cfeabc96714 Mon Sep 17 00:00:00 2001 From: "dec.kolakowski" Date: Mon, 20 Jan 2025 09:47:45 +0000 Subject: [PATCH 4/4] feat: remove sub folder --- sqs/{3.0.0 => }/README.md | 0 sqs/{3.0.0 => }/SNS-SQS-Pub-Sub.png | Bin sqs/{3.0.0 => }/SQS-Point-To-Point.png | Bin 3 files changed, 0 insertions(+), 0 deletions(-) rename sqs/{3.0.0 => }/README.md (100%) rename sqs/{3.0.0 => }/SNS-SQS-Pub-Sub.png (100%) rename sqs/{3.0.0 => }/SQS-Point-To-Point.png (100%) diff --git a/sqs/3.0.0/README.md b/sqs/README.md similarity index 100% rename from sqs/3.0.0/README.md rename to sqs/README.md diff --git a/sqs/3.0.0/SNS-SQS-Pub-Sub.png b/sqs/SNS-SQS-Pub-Sub.png similarity index 100% rename from sqs/3.0.0/SNS-SQS-Pub-Sub.png rename to sqs/SNS-SQS-Pub-Sub.png diff --git a/sqs/3.0.0/SQS-Point-To-Point.png b/sqs/SQS-Point-To-Point.png similarity index 100% rename from sqs/3.0.0/SQS-Point-To-Point.png rename to sqs/SQS-Point-To-Point.png