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