You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by nf...@apache.org on 2021/02/17 13:12:19 UTC
[camel-kamelets] 01/02: Added AWS-S3 source kamelet
This is an automated email from the ASF dual-hosted git repository.
nferraro pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-kamelets.git
commit c3e034d4f5b7808913df9479d46eb633b1e32a18
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue Feb 16 18:31:32 2021 +0100
Added AWS-S3 source kamelet
---
aws2-s3-source.kamelet.yaml | 65 +++++++++++++++++++++
.../ROOT/assets/images/kamelets/aws2-s3-source.svg | 1 +
docs/modules/ROOT/nav.adoc | 1 +
docs/modules/ROOT/pages/aws2-s3-source.adoc | 67 ++++++++++++++++++++++
4 files changed, 134 insertions(+)
diff --git a/aws2-s3-source.kamelet.yaml b/aws2-s3-source.kamelet.yaml
new file mode 100644
index 0000000..1494707
--- /dev/null
+++ b/aws2-s3-source.kamelet.yaml
@@ -0,0 +1,65 @@
+apiVersion: camel.apache.org/v1alpha1
+kind: Kamelet
+metadata:
+ name: aws2-s3-source
+ annotations:
+ camel.apache.org/kamelet.icon: "data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHg9IjAiIHk9IjAiIHZpZXdCb3g9IjAgMCAyNDguMiAzMDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxzdHlsZT4uc3QyOHtmaWxsOiM4YzMxMjN9LnN0Mjl7ZmlsbDojZTA1MjQzfTwvc3R5bGU+PHBhdGggY2xhc3M9InN0MjgiIGQ9Ik0yMCA1Mi4xTDAgNjJ2MTc1LjVsMjAgOS45LjEtLjFWNTIuMmwtLjEtLjEiLz48cGF0aCBjbGFzcz0ic3QyOSIgZD0iTTEyNyAyMjJMMjAgMjQ3LjVWNTIuMUwxMjcgNzd2MTQ1Ii8+PHBhdGggY2xhc3M9InN0MjgiIG [...]
+ camel.apache.org/provider: "Apache Software Foundation"
+ labels:
+ camel.apache.org/kamelet.type: "source"
+spec:
+ definition:
+ title: "AWS2 S3 Source"
+ description: |-
+ Receive data from AWS S3.
+ required:
+ - bucketNameOrArn
+ - accessKey
+ - secretKey
+ - region
+ properties:
+ bucketNameOrArn:
+ title: Bucket Name
+ description: The S3 Bucket name or ARN
+ type: string
+ deleteAfterRead:
+ title: Auto-delete objects
+ description: Delete objects after consuming them
+ type: boolean
+ x-descriptors:
+ - 'urn:alm:descriptor:com.tectonic.ui:checkbox'
+ default: true
+ accessKey:
+ title: Access Key
+ description: The access key obtained from AWS
+ type: string
+ x-descriptors:
+ - urn:alm:descriptor:com.tectonic.ui:password
+ secretKey:
+ title: Secret Key
+ description: The secret key obtained from AWS
+ type: string
+ x-descriptors:
+ - urn:alm:descriptor:com.tectonic.ui:password
+ region:
+ title: AWS Region
+ description: The AWS region to connect to
+ type: string
+ example: eu-west-1
+ types:
+ out:
+ mediaType: application/json
+ dependencies:
+ - "camel:jackson"
+ flow:
+ from:
+ uri: "aws2-s3:{{bucketNameOrArn}}"
+ parameters:
+ secretKey: "{{secretKey}}"
+ accessKey: "{{accessKey}}"
+ region: "{{region}}"
+ deleteAfterRead: "{{deleteAfterRead}}"
+ steps:
+ - marshal:
+ json: {}
+ - to: "kamelet:sink"
diff --git a/docs/modules/ROOT/assets/images/kamelets/aws2-s3-source.svg b/docs/modules/ROOT/assets/images/kamelets/aws2-s3-source.svg
new file mode 100644
index 0000000..1d0f76b
--- /dev/null
+++ b/docs/modules/ROOT/assets/images/kamelets/aws2-s3-source.svg
@@ -0,0 +1 @@
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" x="0" y="0" viewBox="0 0 248.2 300" xml:space="preserve"><style>.st28{fill:#8c3123}.st29{fill:#e05243}</style><path class="st28" d="M20 52.1L0 62v175.5l20 9.9.1-.1V52.2l-.1-.1"/><path class="st29" d="M127 222L20 247.5V52.1L127 77v145"/><path class="st28" d="M78.7 182.1l45.4 5.8.3-.7.3-74.4-.5-.6-45.4 5.7-.1 64.2"/><path class="st28" d="M124.1 222.3l104.1 25.2.2-.3V52.1l-.2-.2-104.1 25.4v145"/><path class="st29" d="M169.5 [...]
\ No newline at end of file
diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc
index ccae072..6a794bb 100644
--- a/docs/modules/ROOT/nav.adoc
+++ b/docs/modules/ROOT/nav.adoc
@@ -1,6 +1,7 @@
// THIS FILE IS AUTOMATICALLY GENERATED: DO NOT EDIT
* xref:ROOT:aws-kinesis-source.adoc[image:kamelets/aws-kinesis-source.svg[] AWS Kinesis Source]
* xref:ROOT:aws-sqs-source.adoc[image:kamelets/aws-sqs-source.svg[] AWS SQS Source]
+* xref:ROOT:aws2-s3-source.adoc[image:kamelets/aws2-s3-source.svg[] AWS2 S3 Source]
* xref:ROOT:bitcoin-source.adoc[image:kamelets/bitcoin-source.svg[] Bitcoin Source]
* xref:ROOT:http-source.adoc[image:kamelets/http-source.svg[] HTTP Source]
* xref:ROOT:jira-source.adoc[image:kamelets/jira-source.svg[] Jira Source]
diff --git a/docs/modules/ROOT/pages/aws2-s3-source.adoc b/docs/modules/ROOT/pages/aws2-s3-source.adoc
new file mode 100644
index 0000000..cc5b51c
--- /dev/null
+++ b/docs/modules/ROOT/pages/aws2-s3-source.adoc
@@ -0,0 +1,67 @@
+// THIS FILE IS AUTOMATICALLY GENERATED: DO NOT EDIT
+= image:kamelets/aws2-s3-source.svg[] AWS2 S3 Source
+
+*Provided by: "Apache Software Foundation"*
+
+Receive data from AWS S3.
+
+== Configuration Options
+
+The following table summarizes the configuration options available for the `aws2-s3-source` Kamelet:
+[width="100%",cols="2,^2,3,^2,^2,^3",options="header"]
+|===
+| Property| Name| Description| Type| Default| Example
+| *accessKey {empty}* *| Access Key| The access key obtained from AWS| string| |
+| *bucketNameOrArn {empty}* *| Bucket Name| The S3 Bucket name or ARN| string| |
+| *region {empty}* *| AWS Region| The AWS region to connect to| string| | `"eu-west-1"`
+| *secretKey {empty}* *| Secret Key| The secret key obtained from AWS| string| |
+| deleteAfterRead| Auto-delete objects| Delete objects after consuming them| boolean| `true`|
+|===
+
+NOTE: Fields marked with ({empty}*) are mandatory.
+
+== Usage
+
+This section summarizes how the `aws2-s3-source` can be used in various contexts.
+
+=== Knative Source
+
+The `aws2-s3-source` Kamelet can be used as Knative source by binding it to a Knative object.
+
+.aws2-s3-source-binding.yaml
+[source,yaml]
+----
+apiVersion: camel.apache.org/v1alpha1
+kind: KameletBinding
+metadata:
+ name: aws2-s3-source-binding
+spec:
+ source:
+ ref:
+ kind: Kamelet
+ apiVersion: camel.apache.org/v1alpha1
+ name: aws2-s3-source
+ properties:
+ accessKey: "The Access Key"
+ bucketNameOrArn: "The Bucket Name"
+ region: "eu-west-1"
+ secretKey: "The Secret Key"
+ sink:
+ ref:
+ kind: InMemoryChannel
+ apiVersion: messaging.knative.dev/v1
+ name: mychannel
+
+----
+
+Make sure you have xref:latest@camel-k::installation/installation.adoc[Camel K installed] into the Kubernetes cluster you're connected to.
+
+Save the `aws2-s3-source-binding.yaml` file into your hard drive, then configure it according to your needs.
+
+You can run the source using the following command:
+
+[source,shell]
+----
+kubectl apply -f aws2-s3-source-binding.yaml
+----
+// THIS FILE IS AUTOMATICALLY GENERATED: DO NOT EDIT