github.com/argoproj/argo-events@v1.9.1/docs/eventsources/setup/azure-queue-storage.md (about)

     1  # Azure Queue Storage
     2  
     3  Azure Queue Storage event-source allows you to consume messages from azure storage queues.
     4  
     5  ## Event Structure
     6  
     7  The structure of an event dispatched by the event-source over the eventbus looks like following,
     8  
     9          {
    10              "context": {
    11                "id": "unique_event_id",
    12                "source": "name_of_the_event_source",
    13                "specversion": "cloud_events_version",
    14                "type": "type_of_event_source",
    15                "datacontenttype": "type_of_data",
    16                "subject": "name_of_the_configuration_within_event_source"
    17                "time": "event_time",
    18              },
    19              "data": {
    20                  "messageID": "MessageID is the ID of the message",
    21                  "body": "Body represents the message body",
    22                  "insertionTime": "InsertionTime is the time the message was inserted into the queue",
    23              }
    24          }
    25  
    26  ## Setup
    27  
    28  1. Create a queue called `test` either using az cli or Azure storage management console.
    29  
    30  1. Fetch your connection string for Azure Queue Storage and base64 encode it.
    31  
    32  1. Create a secret called `azure-secret` as follows.
    33  
    34          apiVersion: v1
    35          kind: Secret
    36          metadata:
    37            name: azure-secret
    38          type: Opaque
    39          data:
    40            connectionstring: <base64-connection-string>
    41  
    42  1. Deploy the secret.
    43  
    44          kubectl -n argo-events apply -f azure-secret.yaml
    45  
    46  1. Create the event source by running the following command.
    47  
    48          kubectl apply -n argo-events -f https://raw.githubusercontent.com/argoproj/argo-events/stable/examples/event-sources/azure-queue-storage.yaml
    49  
    50  1. Inspect the event-source pod logs to make sure it was able to listen to the queue specified in the event source to consume messages.
    51  
    52  1. Create a sensor by running the following command.
    53  
    54          kubectl apply -n argo-events -f https://raw.githubusercontent.com/argoproj/argo-events/stable/examples/sensors/azure-queue-storage.yaml
    55  
    56  1. Dispatch a message to the queue.
    57  
    58          az storage message put -q test --content {"message": "hello"}'  --account-name mystorageaccount --connection-string "<the-connection-string>"
    59  
    60  1. Once a message is published, an argo workflow will be triggered. Run `argo list` to find the workflow.
    61  
    62  ## Troubleshoot
    63  
    64  Please read the [FAQ](https://argoproj.github.io/argo-events/FAQ/).