jbang/kafka-batch-s3/kafka-batch-s3.camel.yaml (31 lines of code) (raw):
## ---------------------------------------------------------------------------
## Licensed to the Apache Software Foundation (ASF) under one or more
## contributor license agreements. See the NOTICE file distributed with
## this work for additional information regarding copyright ownership.
## The ASF licenses this file to You under the Apache License, Version 2.0
## (the "License"); you may not use this file except in compliance with
## the License. You may obtain a copy of the License at
##
## http://www.apache.org/licenses/LICENSE-2.0
##
## Unless required by applicable law or agreed to in writing, software
## distributed under the License is distributed on an "AS IS" BASIS,
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
## See the License for the specific language governing permissions and
## limitations under the License.
## ---------------------------------------------------------------------------
# camel-k: dependency=camel:kafka
- route:
id: "kafka-to-log"
from:
uri: "kamelet:kafka-batch-not-secured-source"
parameters:
bootstrapServers: "localhost:9092"
topic: "test-topic"
consumerGroup: 'my-group'
batchSize: 10
pollTimeout: 40000
maxPollIntervalMs: 60000
autoCommitEnable: false
allowManualCommit: true
deserializeHeaders: true
steps:
- split:
simple: "${body}"
steps:
- setHeader:
name: "file"
simple: "${body.getMessage().getHeader('kafka.TOPIC')}-${date:now:yyyyMMddHHmmssSSS}.txt"
- setBody:
simple: "${body.getMessage().getBody()}"
- to:
uri: "kamelet:aws-s3-sink"
parameters:
useDefaultCredentialsProvider: true
region: "eu-west-1"
bucketNameOrArn: kamelets-demo
- to:
uri: "kamelet:kafka-batch-manual-commit-action"