| apiVersion: camel.apache.org/v1alpha1 |
| kind: Kamelet |
| metadata: |
| name: aws-s3-streaming-upload-sink |
| annotations: |
| camel.apache.org/kamelet.support.level: "Preview" |
| camel.apache.org/catalog.version: "0.5.0" |
| camel.apache.org/kamelet.icon: "data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHg9IjAiIHk9IjAiIHZpZXdCb3g9IjAgMCAyNDguMiAzMDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxzdHlsZT4uc3QyOHtmaWxsOiM4YzMxMjN9LnN0Mjl7ZmlsbDojZTA1MjQzfTwvc3R5bGU+PHBhdGggY2xhc3M9InN0MjgiIGQ9Ik0yMCA1Mi4xTDAgNjJ2MTc1LjVsMjAgOS45LjEtLjFWNTIuMmwtLjEtLjEiLz48cGF0aCBjbGFzcz0ic3QyOSIgZD0iTTEyNyAyMjJMMjAgMjQ3LjVWNTIuMUwxMjcgNzd2MTQ1Ii8+PHBhdGggY2xhc3M9InN0MjgiIGQ9Ik03OC43IDE4Mi4xbDQ1LjQgNS44LjMtLjcuMy03NC40LS41LS42LTQ1LjQgNS43LS4xIDY0LjIiLz48cGF0aCBjbGFzcz0ic3QyOCIgZD0iTTEyNC4xIDIyMi4zbDEwNC4xIDI1LjIuMi0uM1Y1Mi4xbC0uMi0uMi0xMDQuMSAyNS40djE0NSIvPjxwYXRoIGNsYXNzPSJzdDI5IiBkPSJNMTY5LjUgMTgyLjFsLTQ1LjQgNS44di03NS43bDQ1LjQgNS43djY0LjIiLz48cGF0aCBkPSJNMTY5LjUgODYuOWwtNDUuNCA4LjMtNDUuNC04LjNMMTI0IDc1bDQ1LjUgMTEuOSIgZmlsbD0iIzVlMWYxOCIvPjxwYXRoIGQ9Ik0xNjkuNSAyMTMuMWwtNDUuNC04LjMtNDUuNCA4LjMgNDUuMyAxMi43IDQ1LjUtMTIuNyIgZmlsbD0iI2YyYjBhOSIvPjxwYXRoIGNsYXNzPSJzdDI4IiBkPSJNNzguNyA4Ni45bDQ1LjQtMTEuMi40LS4xVi4zbC0uNC0uMy00NS40IDIyLjd2NjQuMiIvPjxwYXRoIGNsYXNzPSJzdDI5IiBkPSJNMTY5LjUgODYuOWwtNDUuNC0xMS4yVjBsNDUuNCAyMi43djY0LjIiLz48cGF0aCBjbGFzcz0ic3QyOCIgZD0iTTEyNC4xIDMwMGwtNDUuNC0yMi43di02NC4ybDQ1LjQgMTEuMi43LjgtLjIgNzMuNi0uNSAxLjMiLz48cGF0aCBjbGFzcz0ic3QyOSIgZD0iTTEyNC4xIDMwMGw0NS40LTIyLjd2LTY0LjJsLTQ1LjQgMTEuMlYzMDBNMjI4LjIgNTIuMWwyMCAxMHYxNzUuNWwtMjAgMTBWNTIuMSIvPjwvc3ZnPg==" |
| camel.apache.org/provider: "Apache Software Foundation" |
| camel.apache.org/kamelet.group: "AWS S3" |
| labels: |
| camel.apache.org/kamelet.type: "sink" |
| spec: |
| definition: |
| title: "AWS S3 Streaming upload Sink" |
| description: |- |
| Upload data to AWS S3 in streaming upload mode. |
| required: |
| - bucketNameOrArn |
| - accessKey |
| - secretKey |
| - region |
| - keyName |
| type: object |
| properties: |
| bucketNameOrArn: |
| title: Bucket Name |
| description: The S3 Bucket name or ARN. |
| type: string |
| accessKey: |
| title: Access Key |
| description: The access key obtained from AWS. |
| type: string |
| format: password |
| x-descriptors: |
| - urn:alm:descriptor:com.tectonic.ui:password |
| - urn:camel:group:credentials |
| secretKey: |
| title: Secret Key |
| description: The secret key obtained from AWS. |
| type: string |
| format: password |
| x-descriptors: |
| - urn:alm:descriptor:com.tectonic.ui:password |
| - urn:camel:group:credentials |
| region: |
| title: AWS Region |
| description: The AWS region to connect to. |
| type: string |
| example: eu-west-1 |
| autoCreateBucket: |
| title: Autocreate Bucket |
| description: Setting the autocreation of the S3 bucket bucketName. |
| type: boolean |
| x-descriptors: |
| - 'urn:alm:descriptor:com.tectonic.ui:checkbox' |
| default: false |
| streamingUploadMode: |
| title: Streaming Upload Mode |
| description: Setting the Streaming Upload Mode |
| type: boolean |
| x-descriptors: |
| - 'urn:alm:descriptor:com.tectonic.ui:checkbox' |
| default: true |
| restartingPolicy: |
| title: Restarting Policy |
| description: The restarting policy to use in streaming upload mode. There are 2 enums and the value can be one of override, lastPart |
| type: string |
| default: "lastPart" |
| batchMessageNumber: |
| title: Batch Message Number |
| description: The number of messages composing a batch in streaming upload mode |
| type: int |
| default: 10 |
| batchSize: |
| title: Batch Size |
| description: The batch size (in bytes) in streaming upload mode |
| type: int |
| default: '1000000' |
| streamingUploadTimeout: |
| title: Streaming Upload Timeout |
| description: While streaming upload mode is true, this option set the timeout to complete upload |
| type: long |
| namingStrategy: |
| title: Naming Strategy |
| description: The naming strategy to use in streaming upload mode. There are 2 enums and the value can be one of progressive, random |
| type: string |
| default: "progressive" |
| keyName: |
| title: Key Name |
| description: Setting the key name for an element in the bucket through endpoint parameter. In Streaming Upload, with the default configuration, this will be the base for the progressive creation of files. |
| type: string |
| dependencies: |
| - "camel:aws2-s3" |
| - "camel:kamelet" |
| flow: |
| from: |
| uri: "kamelet:source" |
| steps: |
| - to: |
| uri: "aws2-s3:{{bucketNameOrArn}}" |
| parameters: |
| secretKey: "{{secretKey}}" |
| accessKey: "{{accessKey}}" |
| region: "{{region}}" |
| autoCreateBucket: "{{autoCreateBucket}}" |
| streamingUploadMode: "{{streamingUploadMode}}" |
| restartingPolicy: "{{restartingPolicy}}" |
| batchMessageNumber: "{{batchMessageNumber}}" |
| batchSize: "{{batchSize}}" |
| namingStrategy: "{{namingStrategy}}" |
| keyName: "{{keyName}}" |
| streamingUploadTimeout: "{{?streamingUploadTimeout}}" |
| |