You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2022/03/24 13:57:52 UTC

[camel-kamelets] 01/02: AWS S3 Sink: Add an optional keyName parameter

This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch sink-s3
in repository https://gitbox.apache.org/repos/asf/camel-kamelets.git

commit 2893cb2fd19a7abdaa4d305b1d8602eb31732da2
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Thu Mar 24 14:55:42 2022 +0100

    AWS S3 Sink: Add an optional keyName parameter
---
 kamelets/aws-s3-sink.kamelet.yaml                          | 14 +++++++-------
 .../src/main/resources/kamelets/aws-s3-sink.kamelet.yaml   | 10 +++++-----
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/kamelets/aws-s3-sink.kamelet.yaml b/kamelets/aws-s3-sink.kamelet.yaml
index e8224c4..5838d29 100644
--- a/kamelets/aws-s3-sink.kamelet.yaml
+++ b/kamelets/aws-s3-sink.kamelet.yaml
@@ -37,11 +37,11 @@ spec:
       
       When using a default Credentials Provider the S3 client will load the credentials through this provider and won't use the static credential. This is reason for not having the access key and secret key as mandatory parameter for this Kamelet.
 
-      The Kamelet expects the following headers to be set:
+      The Kamelet can use the following header to be set:
 
       - `file` / `ce-file`: as the file name to upload
 
-      If the header won't be set the exchange ID will be used as file name.
+      If the header won't be set, the Kamelet parameter `keyName` should be populated. The `keyName` parameter could be a simple value language from the Apache Camel.
     required:
       - bucketNameOrArn
       - region
@@ -97,6 +97,10 @@ spec:
         x-descriptors:
           - 'urn:alm:descriptor:com.tectonic.ui:checkbox'
         default: false
+      keyName:
+        title: Key Name
+        description: The key name for saving an element in the bucket.
+        type: string
   dependencies:
     - "camel:core"
     - "camel:aws2-s3"
@@ -117,11 +121,6 @@ spec:
             - set-header:
                 name: CamelAwsS3Key
                 simple: "${header[ce-file]}"
-          otherwise:
-            steps:
-            - set-header:
-                name: CamelAwsS3Key
-                simple: "${exchangeId}"
       - to:
           uri: "aws2-s3:{{bucketNameOrArn}}"
           parameters:
@@ -132,3 +131,4 @@ spec:
             useDefaultCredentialsProvider: "{{useDefaultCredentialsProvider}}"
             uriEndpointOverride: "{{?uriEndpointOverride}}"
             overrideEndpoint: "{{overrideEndpoint}}"
+            keyName: "{{?keyName}}"
diff --git a/library/camel-kamelets/src/main/resources/kamelets/aws-s3-sink.kamelet.yaml b/library/camel-kamelets/src/main/resources/kamelets/aws-s3-sink.kamelet.yaml
index e8224c4..5b5a492 100644
--- a/library/camel-kamelets/src/main/resources/kamelets/aws-s3-sink.kamelet.yaml
+++ b/library/camel-kamelets/src/main/resources/kamelets/aws-s3-sink.kamelet.yaml
@@ -97,6 +97,10 @@ spec:
         x-descriptors:
           - 'urn:alm:descriptor:com.tectonic.ui:checkbox'
         default: false
+      keyName:
+        title: Key Name
+        description: The key name for saving an element in the bucket.
+        type: string
   dependencies:
     - "camel:core"
     - "camel:aws2-s3"
@@ -117,11 +121,6 @@ spec:
             - set-header:
                 name: CamelAwsS3Key
                 simple: "${header[ce-file]}"
-          otherwise:
-            steps:
-            - set-header:
-                name: CamelAwsS3Key
-                simple: "${exchangeId}"
       - to:
           uri: "aws2-s3:{{bucketNameOrArn}}"
           parameters:
@@ -132,3 +131,4 @@ spec:
             useDefaultCredentialsProvider: "{{useDefaultCredentialsProvider}}"
             uriEndpointOverride: "{{?uriEndpointOverride}}"
             overrideEndpoint: "{{overrideEndpoint}}"
+            keyName: "{{?keyName}}"