github.com/argoproj/argo-events@v1.9.1/examples/sensors/aws-sns.yaml (about)

     1  apiVersion: argoproj.io/v1alpha1
     2  kind: Sensor
     3  metadata:
     4    name: aws-sns
     5  spec:
     6    template:
     7      serviceAccountName: operate-workflow-sa
     8    dependencies:
     9      - name: test-dep
    10        eventSourceName: aws-sns
    11        eventName: example
    12    triggers:
    13      - template:
    14          name: sns-workflow
    15          k8s:
    16            operation: create
    17            source:
    18              resource:
    19                apiVersion: argoproj.io/v1alpha1
    20                kind: Workflow
    21                metadata:
    22                  generateName: aws-sns-worfklow-
    23                spec:
    24                  entrypoint: main
    25                  arguments:
    26                    parameters:
    27                    - name: message
    28                  templates:
    29                  - name: main
    30                    dag:
    31                      tasks:
    32                      - name: extract-message
    33                        template: extract-sns-message
    34                        arguments:
    35                          parameters:
    36                            - name: sns-message
    37                              value: "{{workflow.parameters.message}}"
    38                      - name: whalesay
    39                        dependencies: [extract-message]
    40                        template: whalesay
    41                        arguments:
    42                          parameters:
    43                          - name: message
    44                            value: "{{tasks.extract-message.outputs.result}}"
    45                  - name: extract-sns-message
    46                    inputs:
    47                      parameters:
    48                      - name: sns-message
    49                    script:
    50                      image: node:12-alpine
    51                      command: [node]
    52                      source: |
    53                        const snsMessage = {{inputs.parameters.sns-message}};
    54                        console.log(snsMessage.Message);
    55                  - name: whalesay
    56                    inputs:
    57                      parameters:
    58                      - name: message
    59                    container:
    60                      image: docker/whalesay:latest
    61                      command: [cowsay]
    62                      args: ["{{inputs.parameters.message}}"]
    63            parameters:
    64              - src:
    65                  dependencyName: test-dep
    66                  dataKey: body
    67                dest: spec.arguments.parameters.0.value