github.com/argoproj/argo-events@v1.9.1/examples/sensors/filter-with-multiple-data-filters-in-or.yaml (about)

     1  # Event Payload
     2  #
     3  # {
     4  #  "a": true,
     5  #  "b": {
     6  #    "c": 3.14,
     7  #    "d": "hello, world"
     8  #  }
     9  # }
    10  #
    11  
    12  apiVersion: argoproj.io/v1alpha1
    13  kind: Sensor
    14  metadata:
    15    name: with-multiple-data-filters-in-or
    16  spec:
    17    dependencies:
    18      - name: test-dep
    19        eventSourceName: webhook
    20        eventName: example
    21        filters:
    22          # If event payload passes either one of the following filters, the event is considered a valid event.
    23          dataLogicalOperator: "or"
    24          data:
    25            - path: "a"   # true
    26              type: "bool"
    27              value:
    28                - "true"
    29            - path: "b.c"   # true
    30              type: "number"
    31              value:
    32                - "3.14"
    33            - path: "b.d"   # FALSE
    34              type: "string"
    35              value:
    36                - "hello there"
    37          # result: EVENT PASS
    38    triggers:
    39      - template:
    40          name: workflow
    41          k8s:
    42            operation: create
    43            source:
    44              resource:
    45                apiVersion: argoproj.io/v1alpha1
    46                kind: Workflow
    47                metadata:
    48                  generateName: workflow-
    49                spec:
    50                  entrypoint: whalesay
    51                  arguments:
    52                    parameters:
    53                      - name: message
    54                        # value will get overridden by the event payload
    55                        value: hello world
    56                  templates:
    57                    - name: whalesay
    58                      inputs:
    59                        parameters:
    60                          - name: message
    61                      container:
    62                        image: docker/whalesay:latest
    63                        command: [cowsay]
    64                        args: ["{{inputs.parameters.message}}"]
    65            parameters:
    66              - src:
    67                  dependencyName: test-dep
    68                  dataKey: name
    69                dest: spec.arguments.parameters.0.value