-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding initial doc for IntegrationSink
Signed-off-by: Matthias Wessendorf <[email protected]>
- Loading branch information
Showing
6 changed files
with
112 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# Knative Sink for Apache Camel Kamelet integrations | ||
|
||
![stage](https://img.shields.io/badge/Stage-alpah-red?style=flat-square) | ||
![version](https://img.shields.io/badge/API_Version-v1alpha1-red?style=flat-square) | ||
|
||
The `IntegrationSink` is a Knative Eventing custom resource supporting selected [_Kamelets_](https://camel.apache.org/camel-k/latest/kamelets/kamelets.html) from the [Apache Camel](https://camel.apache.org/) project. Kamelets allow users to connect to 3rd party system for improved connectivity, they can act as "sources" or as "sinks". Therefore the `IntegrationSink` allows to send data to external systems out of Knative Eventing in the format of CloudEvents. The integration sink is part of the Knative Eventing core installation. | ||
|
||
## Supported Kamelet sinks | ||
|
||
* [AWS S3](./aws_s3.md) | ||
* [AWS SQS](./aws_sqs.md) | ||
* [Generic logger](./logger.md) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# AWS S3 Sink | ||
|
||
The `IntegrationSink` supports the Amazon Web Services (AWS) S3 service, through its `aws.s3` property. | ||
|
||
## Amazon credentials | ||
|
||
For connecting to AWS the `IntegrationSink` uses Kubernetes `Secret`, present in the namespace of the reSink. The `Secret` can be created like: | ||
|
||
```bash | ||
kubectl -n <namespace> create secret generic my-secret --from-literal=aws.accessKey=<accessKey> --from-literal=aws.secretKey=<secretKey> | ||
``` | ||
|
||
## AWS S3 Sink Example | ||
|
||
Below is an `IntegrationSink` to send data to an Amazon S3 Bucket: | ||
|
||
```yaml | ||
apiVersion: Sinks.knative.dev/v1alpha1 | ||
kind: IntegrationSink | ||
metadata: | ||
name: integration-sink-aws-s3 | ||
namespace: knative-samples | ||
spec: | ||
aws: | ||
s3: | ||
arn: "arn:aws:s3:::my-bucket" | ||
region: "eu-north-1" | ||
auth: | ||
secret: | ||
ref: | ||
name: "my-secret" | ||
``` | ||
Inside of the `aws.s3` object we define the name of the bucket (or _arn_) and its region. The credentials for the AWS service are referenced from the `my-secret` Kubernetes `Secret` | ||
|
||
More details about the Apache Camel Kamelet [aws-s3-sink](https://camel.apache.org/camel-kamelets/latest/aws-s3-sink.html). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
# AWS Simple Queue Service Sink | ||
|
||
The `IntegrationSink` supports the Amazon Web Services (AWS) Simple Queue Service (SQS) service, through its `aws.sqs` property. | ||
|
||
## Amazon credentials | ||
|
||
For connecting to AWS the `IntegrationSink` uses Kubernetes `Secret`, present in the namespace of the reSink. The `Secret` can be created like: | ||
|
||
```bash | ||
kubectl -n <namespace> create secret generic my-secret --from-literal=aws.accessKey=<accessKey> --from-literal=aws.secretKey=<secretKey> | ||
``` | ||
|
||
## AWS SQS Sink Example | ||
|
||
Below is an `IntegrationSink` to send data to AWS SQS: | ||
|
||
```yaml | ||
apiVersion: Sinks.knative.dev/v1alpha1 | ||
kind: IntegrationSink | ||
metadata: | ||
name: integration-sink-aws-sqs | ||
namespace: knative-samples | ||
spec: | ||
aws: | ||
sqs: | ||
arn: "arn:aws:s3:::my-queue" | ||
region: "eu-north-1" | ||
auth: | ||
secret: | ||
ref: | ||
name: "my-secret" | ||
``` | ||
Inside of the `aws.sqs` object we define the name of the queue (or _arn_) and its region. The credentials for the AWS service are referenced from the `my-secret` Kubernetes `Secret` | ||
|
||
More details about the Apache Camel Kamelet [aws-sqs-sink](https://camel.apache.org/camel-kamelets/latest/aws-sqs-sink.html). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
# Log Sink | ||
|
||
The `IntegrationSink` supports the _Log Sink Kamelet_ that logs all data that it receives, through its `log` property. This sink useful for debugging purposes. | ||
|
||
## Log Sink Example | ||
|
||
Below is an `IntegrationSink` that logs all data that it receives: | ||
|
||
```yaml | ||
apiVersion: Sinks.knative.dev/v1alpha1 | ||
kind: IntegrationSink | ||
metadata: | ||
name: integration-log-sink | ||
namespace: knative-samples | ||
spec: | ||
log: | ||
showHeaders: true | ||
level: INFO | ||
``` | ||
Inside of the `log` object we define the logging `level` and define to also show (HTTP) headers it received. | ||
|
||
More details about the Apache Camel Kamelet [timer-sink](https://camel.apache.org/camel-kamelets/latest/timer-sink.html). |