# README
Amazon SNS event source for Knative Eventing
This event source subscribes to notifications from a Amazon SNS topic and sends them as CloudEvents to an arbitrary event sink.
Each instance of the SNS source is backed by a Knative Service that exposes a unique public HTTP(S) endpoint. This endpoint is used to subscribe to the desired SNS topic on behalf of the user.
Contents
Prerequisites
- Register an AWS account
- Create an Access Key in your AWS IAM dashboard.
- Create a Standard SNS topic.
Deployment to Kubernetes
The Amazon SNS event source can be deployed to Kubernetes as an AWSSNSSource
object, to a cluster where the
TriggerMesh AWS Event Sources Controller is running.
:information_source: The sample manifest below references AWS credentials (Access Key) from a Kubernetes Secret object called
awscreds
. This Secret can be generated with the following command:$ kubectl -n <my_namespace> create secret generic awscreds \ --from-literal=aws_access_key_id=<my_key_id> \ --from-literal=aws_secret_access_key=<my_secret_key>
Alternatively, credentials can be used as literal strings instead of references to Kubernetes Secrets by replacing
valueFrom
attributes withvalue
inside API objects' manifests.
Copy the sample manifest from config/samples/awssnssource.yaml
and replace the pre-filled spec
attributes with the
values corresponding to your Amazon SNS topic. Then, create that AWSSNSSource
object in your Kubernetes cluster:
$ kubectl -n <my_namespace> create -f my-awssnssource.yaml