Skip to main content

Pubsub

PubSub

Declares a managed Pub/Sub topic.

Establishes an asynchronous, event-driven messaging channel between decoupled platform components. The engine provisions the underlying topic and applies message-retention settings; notification routing to downstream deployments is wired through the parent Project's DeploymentConfigs during computation.

PropertyTypeDescription
apiVersionstringAPI schema version. Pins the manifest to a specific schema contract for backward-compatibility. Must be the constant lowops.manifests.v1.
kindstringResource kind discriminator. Identifies this document as a PubSub topic so the engine routes it to the correct defaulter, validator, computer, and executor. Must be the constant PubSub.
metadatamapClassification labels and graph linkage. Free-form key/value pairs used to classify the manifest. Certain reserved keys (e.g. name, project) are read by the engine to resolve this manifest's identity and its parent Project in the dependency graph.
specSpecDesired Pub/Sub topic configuration. The authoritative, user-authored specification for this topic. See Spec.

Spec

User-authored Pub/Sub topic configuration.

Declares message retention, geographic persistence constraints, optional encryption, and event-driven notification targets for the topic.

PropertyTypeDescription
descriptionstringHuman-readable description of the topic. Optional free text describing this topic's purpose. Documentation-only: not propagated onto the provisioned Pub/Sub topic; retained as manifest metadata and context for operators and AI assistants.
encryptedboolEncrypt messages with a customer-managed key (CMEK). NOT YET IMPLEMENTED. Declared in the schema but currently ignored by the engine (no consumer reads it); the executor provisions the topic with Google-managed encryption. Intended future behavior: provision a dedicated KMS key ring and crypto key and associate it with the topic for envelope encryption.
allowedPersistenceRegionslist of stringAllowed message storage regions. GCP region codes where message data may reside. Reflected into computed.allowed_persistence_regions (defaulting to the parent region when empty). NOTE: the executor does not yet apply a message storage policy to the topic, so this currently only feeds computed state.
messageRetentionDurationSecondsint64Unacknowledged-message retention, in seconds. Minimum duration to retain unacknowledged messages in the topic backlog. Resolved into computed.message_retention_duration_seconds (defaulting to 600s when unset) and applied by the executor as the topic's message retention duration.
notificationslist of EventArcNotificationTargetEvent notification targets. Downstream destinations to notify on messages published to this topic. The computer registers each target as an Eventarc notification on the referenced DeploymentConfig, and the DeploymentConfig executor creates the actual triggers. NOTE: this routing is self-flagged as not fully implemented in the schema. See EventArcNotificationTarget.

EventArcNotificationTarget

Details the webhook destination for Eventarc triggers.

Directs where Pub/Sub or Audit Log events pushed by Eventarc should hit a deployed Cloud Run service.

PropertyTypeDescription
deploymentConfigstringThe name of the 'DeploymentConfig' manifest that defines the target service for the notification.
pathstringThe relative URL path on the target service where Eventarc should send the event payload.