doze/registry
S

SNS

official ● signed
doze/sns

SNS-compatible pub/sub built into doze — declare topics and subscriptions and fan out to SQS queues, with filter policies and raw delivery. Wires to an sqs instance by reference. No LocalStack; built ground-up alongside doze's S3/SQS.

Usage

Drop it in doze.hcl and run doze up.

doze.hcl
sns "events" {
  sqs = sqs.jobs.name

  topic "signups" {}

  subscribe "signups" {
    protocol = "sqs"
    endpoint = "emails"
    raw      = true
  }
}

Configuration

Arguments and nested blocks the engine accepts.

Name Type Default Description
sqs string The sqs instance (by reference) this topic delivers into.
topic"<name>" { } nested block · repeatable

A topic to create on boot.

— no arguments, just the label

subscribe"<topic>" { } nested block · repeatable

A subscription fanning a topic out to an endpoint.

Name Type Default Description
protocol REQ string Delivery protocol (sqs, …).
endpoint REQ string Target endpoint — e.g. an SQS queue name.
raw bool false Raw message delivery (no SNS envelope).
filter map(list(string)) Subscription filter policy by attribute.