Google Cloud Pub/Sub
Managed global topic with per-subscription retention and seek, so consumers can replay.
- Provider
- gcp
- Kind
- Pub/Sub topic
- Category
- Messaging
- Official docs
- https://cloud.google.com/pubsub/docs/overview
| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| delivery | enum | at-most-once | at-least-once | exactly-once | yes | — | ▸ at-least-once |
| managed | boolean | — | no | false | ▸ true |
| ordering | enum | none | per-key | no | none | ▸ none |
| replay | boolean | — | no | false | ▸ true |
| retentionDays | integer | — | no | 7 | inherited |
| topicPerEventType | boolean | — | no | true | inherited |
Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.
pubsub-replay-required
The design declares that consumers must be able to replay history. A fan-out topic that does not retain messages cannot deliver that.
- — all of these hold:
- — the design requirement `messaging.replay` is true
- — the node's `replay` is false
nodes:
- { id: "pubsub", component: "google-pubsub" }EventBridgealibaba-eventbridgeAmazon EventBridgeaws-eventbridgeAmazon SNSsnsAzure Event Gridazure-event-gridAzure Event Grid MQTT Brokerazure-event-grid-mqttEclipse MosquittomosquittoMQTT brokermqtt-brokerNanoMQnanomqGeneric Pub/Sub topicpubsub-topicRedis Pub/Subredis-pubsubEventarcgoogle-eventarcOCI Eventsoci-events
# yaml-language-server: $schema=../../schema/component.schema.json # Google Cloud Pub/Sub: at-least-once, unordered unless ordering keys are used; subscriptions retain # acked messages for seven days and support seek, so replay is true. schemaVersion: "1" type: "component" id: "google-pubsub" kind: "pubsub-topic" provider: "gcp" docs: "https://cloud.google.com/pubsub/docs/overview" defaults: managed: true delivery: "at-least-once" ordering: "none" replay: true properties: retentionDays: type: "integer" default: 7