diff --git a/daprdocs/content/en/reference/resource-specs/subscription-schema.md b/daprdocs/content/en/reference/resource-specs/subscription-schema.md new file mode 100644 index 000000000..6d79c7c77 --- /dev/null +++ b/daprdocs/content/en/reference/resource-specs/subscription-schema.md @@ -0,0 +1,184 @@ +--- +type: docs +title: "Subscription spec" +linkTitle: "Subscription spec" +weight: 2000 +description: "The basic spec for a Dapr subscription" +--- + + + +```yml +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + name: subscriptions.dapr.io + labels: + app.kubernetes.io/part-of: "dapr" +spec: + group: dapr.io + conversion: + strategy: Webhook + webhook: + clientConfig: + service: + namespace: replaceme # Patched by post-install webhook + name: dapr-webhook + path: /convert + #caBundle: Patched by post-install webhook + conversionReviewVersions: + - v1 + - v2alpha1 + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + description: Subscription describes an pub/sub event subscription. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + scopes: + items: + type: string + type: array + spec: + description: SubscriptionSpec is the spec for an event subscription. + properties: + pubsubname: + type: string + route: + type: string + topic: + type: string + deadLetterTopic: + type: string + bulkSubscribe: + description: Represents bulk subscribe properies + properties: + enabled: + type: boolean + maxMessagesCount: + type: integer + maxAwaitDurationMs: + type: integer + required: + - enabled + type: object + metadata: + additionalProperties: + type: string + type: object + required: + - pubsubname + - route + - topic + type: object + type: object + served: true + storage: false + - name: v2alpha1 + schema: + openAPIV3Schema: + description: Subscription describes an pub/sub event subscription. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + scopes: + items: + type: string + type: array + spec: + description: SubscriptionSpec is the spec for an event subscription. + properties: + metadata: + additionalProperties: + type: string + description: The optional metadata to provide the subscription. + type: object + pubsubname: + description: The PubSub component name. + type: string + routes: + description: The Routes configuration for this topic. + properties: + default: + type: string + rules: + description: The list of rules for this topic. + items: + description: Rule is used to specify the condition for sending + a message to a specific path. + properties: + match: + description: The optional CEL expression used to match the + event. If the match is not specified, then the route is + considered the default. The rules are tested in the order + specified, so they should be define from most-to-least + specific. The default route should appear last in the + list. + type: string + path: + description: The path for events that match this rule. + type: string + required: + - match + - path + type: object + type: array + type: object + topic: + description: The topic name to subscribe to. + type: string + deadLetterTopic: + description: The optional dead letter queue for this topic to send events to. + type: string + bulkSubscribe: + description: Represents bulk subscribe properies + properties: + enabled: + type: boolean + maxMessagesCount: + type: integer + maxAwaitDurationMs: + type: integer + required: + - enabled + type: object + required: + - pubsubname + - routes + - topic + type: object + type: object + served: true + storage: true + names: + kind: Subscription + listKind: SubscriptionList + plural: subscriptions + singular: subscription + categories: + - all + - dapr + scope: Namespaced +``` \ No newline at end of file