Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@grantr
Last active January 24, 2020 22:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save grantr/6c9b72672c02faf6f0c6083a343a8ba4 to your computer and use it in GitHub Desktop.
Save grantr/6c9b72672c02faf6f0c6083a343a8ba4 to your computer and use it in GitHub Desktop.
kind: Broker
spec:
template:
metadata:
labels: <label map>
ingress: <Destination>
rules:
attributes: <TypeMeta>
apiVersion: eventing.knative.dev/v1alpha1
kind: AttributesRule
filters:
attributes: <TypeMeta>
apiVersion: eventing.knative.dev/v1alpha1
kind: AttributesFilter
wildcard: <TypeMeta>
apiVersion: eventing.knative.dev/v1alpha1
kind: WildcardFilter
cel: <TypeMeta>
apiVersion: eventing.knative.dev/v1alpha1
kind: CELFilter
status:
address:
url: <resolved ingress URL>
kind: Trigger
spec:
filter:
attributes:
type: foo.bar
subscriber: <Destination>
# This gets a rule added by webhook:
kind: Trigger
spec:
rule:
attributes:
type: foo.bar
filter:
attributes:
type: foo.bar
subscriber: <Destination>
kind: Trigger
spec:
rule:
attributes:
type: foo.bar
filter:
cel:
expression: "some cel expr"
subscriber: <Destination>
# Trigger controller creates Rule and Filter objects for each, using Broker's
# metadata template
# Filters are request/response callables
# Rules are created with the rule parameters, the filter uri, and the subscriber
# uri (Trigger controller resolves these)
# Other objects implement Rule and Filter in cooperation with the Broker's ingress
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment