github.com/argoproj/argo-events@v1.9.1/examples/sensors/filter-with-multiple-filters.yaml (about) 1 # Event Payload 2 # 3 # { 4 # "a": "b", 5 # "c": 10, 6 # "d": { 7 # "e": false 8 # } 9 # } 10 # 11 12 apiVersion: argoproj.io/v1alpha1 13 kind: Sensor 14 metadata: 15 name: with-multiple-filters 16 spec: 17 dependencies: 18 - name: test-dep 19 eventSourceName: webhook 20 eventName: example 21 # If event payload passes ALL following filters, the event is considered a valid event. 22 # default "filtersLogicalOperator" = "and" 23 filters: # global filters result: EVENT PASS 24 # default "exprLogicalOperator" = "and" 25 exprs: # expr filter result: EVENT PASS 26 - expr: a == "b" || c == 10 # true 27 fields: 28 - name: a 29 path: a 30 - name: c 31 path: c 32 - expr: e == false # true 33 fields: 34 - name: e 35 path: d.e 36 # default "dataLogicalOperator" = "and" 37 data: # data filter result: EVENT PASS 38 - path: "a" # true 39 type: "string" 40 value: 41 - "b" 42 - path: "c" # true 43 type: "number" 44 value: 45 - "10" 46 - path: "d.e" # true 47 type: "bool" 48 value: 49 - "false" 50 triggers: 51 - template: 52 name: workflow 53 k8s: 54 operation: create 55 source: 56 resource: 57 apiVersion: argoproj.io/v1alpha1 58 kind: Workflow 59 metadata: 60 generateName: workflow- 61 spec: 62 entrypoint: whalesay 63 arguments: 64 parameters: 65 - name: message 66 # value will get overridden by the event payload 67 value: hello world 68 templates: 69 - name: whalesay 70 inputs: 71 parameters: 72 - name: message 73 container: 74 image: docker/whalesay:latest 75 command: [cowsay] 76 args: ["{{inputs.parameters.message}}"] 77 parameters: 78 - src: 79 dependencyName: test-dep 80 dataKey: name 81 dest: spec.arguments.parameters.0.value