This is an automated email from the ASF dual-hosted git repository. acosentino pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel-kafka-connector-examples.git
The following commit(s) were added to refs/heads/master by this push: new e8f141e AWS2 SQS Sink example: Added steps for Openshift secret creds e8f141e is described below commit e8f141eaa5d2570814ea97c42bad7f3859813028 Author: Andrea Cosentino <anco...@gmail.com> AuthorDate: Tue Sep 22 07:38:37 2020 +0200 AWS2 SQS Sink example: Added steps for Openshift secret creds --- aws2-sqs/aws2-sqs-sink/README.adoc | 35 ++++++++++++++++++++++ .../config/openshift/aws2-sqs-cred.properties | 3 ++ .../config/openshift/aws2-sqs-sink-connector.yaml | 18 +++++++++++ 3 files changed, 56 insertions(+) diff --git a/aws2-sqs/aws2-sqs-sink/README.adoc b/aws2-sqs/aws2-sqs-sink/README.adoc index 8151f71..5e5a38e 100644 --- a/aws2-sqs/aws2-sqs-sink/README.adoc +++ b/aws2-sqs/aws2-sqs-sink/README.adoc @@ -169,6 +169,34 @@ You should see something like this: [{"class":"org.apache.camel.kafkaconnector.CamelSinkConnector","type":"sink","version":"0.5.0"},{"class":"org.apache.camel.kafkaconnector.CamelSourceConnector","type":"source","version":"0.5.0"},{"class":"org.apache.camel.kafkaconnector.aws2sqs.CamelAws2sqsSinkConnector","type":"sink","version":"0.5.0"},{"class":"org.apache.camel.kafkaconnector.aws2sqs.CamelAws2sqsSourceConnector","type":"source","version":"0.5.0"},{"class":"org.apache.kafka.connect.file.FileStreamSinkConnector","type":" [...] ---- +### Set the AWS credential as secret (optional) + +You can also set the aws creds option as secret, you'll need to edit the file config/aws-s3-cred.properties with the correct credentials and then execute the following command + +[source,bash,options="nowrap"] +---- +oc create secret generic aws2-sqs --from-file=config/openshift/aws2-sqs-cred.properties +---- + +Now we need to edit KafkaConnectS2I custom resource to reference the secret. For example: + +[source,bash,options="nowrap"] +---- +spec: + # ... + config: + config.providers: file + config.providers.file.class: org.apache.kafka.common.config.provider.FileConfigProvider + #... + externalConfiguration: + volumes: + - name: aws-credentials + secret: + secretName: aws2-sqs +---- + +In this way the secret aws2-sqs will be mounted as volume with path /opt/kafka/external-configuration/aws-credentials/ + ### Create connector instance Now we can create some instance of AWS2 SQS Sink connector @@ -222,6 +250,13 @@ spec: EOF ---- +If you followed the optional step for secret credentials you can run the following command: + +[source,bash,options="nowrap"] +---- +oc apply -f config/openshift/aws2-sqs-sink-connector.yaml +---- + You can check the status of the connector using [source,bash,options="nowrap"] diff --git a/aws2-sqs/aws2-sqs-sink/config/openshift/aws2-sqs-cred.properties b/aws2-sqs/aws2-sqs-sink/config/openshift/aws2-sqs-cred.properties new file mode 100644 index 0000000..d1596a1 --- /dev/null +++ b/aws2-sqs/aws2-sqs-sink/config/openshift/aws2-sqs-cred.properties @@ -0,0 +1,3 @@ +accessKey=xxxx +secretKey=yyyy +region=region diff --git a/aws2-sqs/aws2-sqs-sink/config/openshift/aws2-sqs-sink-connector.yaml b/aws2-sqs/aws2-sqs-sink/config/openshift/aws2-sqs-sink-connector.yaml new file mode 100644 index 0000000..2bd8528 --- /dev/null +++ b/aws2-sqs/aws2-sqs-sink/config/openshift/aws2-sqs-sink-connector.yaml @@ -0,0 +1,18 @@ +apiVersion: kafka.strimzi.io/v1alpha1 +kind: KafkaConnector +metadata: + name: sqs-sink-connector + namespace: myproject + labels: + strimzi.io/cluster: my-connect-cluster +spec: + class: org.apache.camel.kafkaconnector.aws2sqs.CamelAws2sqsSinkConnector + tasksMax: 1 + config: + key.converter: org.apache.kafka.connect.storage.StringConverter + value.converter: org.apache.kafka.connect.storage.StringConverter + topics: sqs-topic + camel.sink.path.queueNameOrArn: camel-connector-test + camel.component.aws2-s3.accessKey: ${file:/opt/kafka/external-configuration/aws-credentials/aws2-sqs-cred.properties:accessKey} + camel.component.aws2-s3.secretKey: ${file:/opt/kafka/external-configuration/aws-credentials/aws2-sqs-cred.properties:secretKey} + camel.component.aws2-s3.region: ${file:/opt/kafka/external-configuration/aws-credentials/aws2-sqs-cred.properties:region}