FROM 086679231553.dkr.ecr.us-east-1.amazonaws.com/docker-parent-images:kafka-connect77 AS connect
USER root

# Copy kafka-connect-dynamodb connector
ENV DYNAMODB_CONNECTOR_VERSION='4.4.3'
ENV CAMEL_REPOSITORY_BASE_URL="https://repo1.maven.org/maven2/org/apache/camel/kafkaconnector"
RUN mkdir /usr/share/camel && \
    wget -O /usr/share/camel/camel-aws-ddb-sink-kafka-connector-${DYNAMODB_CONNECTOR_VERSION}-package.tar.gz ${CAMEL_REPOSITORY_BASE_URL}/camel-aws-ddb-sink-kafka-connector/${DYNAMODB_CONNECTOR_VERSION}/camel-aws-ddb-sink-kafka-connector-${DYNAMODB_CONNECTOR_VERSION}-package.tar.gz && \
    tar -C /usr/share/camel -zxvf /usr/share/camel/camel-aws-ddb-sink-kafka-connector-${DYNAMODB_CONNECTOR_VERSION}-package.tar.gz

COPY entry_point.sh /usr/local/bin/entry_point.sh
RUN chmod +x /usr/local/bin/entry_point.sh

USER appuser

# Add the config file
COPY config.template.json /tmp/

# Generic Kafka-connect config
ENV CONNECTOR_NAME='dynamodb_sink'
ENV CONNECT_CONSUMER_SECURITY_PROTOCOL='SSL'
# If running more than one DynamoDB source connector, set this to a meaningful unique value at runtime
ENV CONNECT_KEY_CONVERTER='org.apache.kafka.connect.storage.StringConverter'
ENV CONNECT_VALUE_CONVERTER='org.apache.kafka.connect.storage.StringConverter'
ENV CONNECT_PLUGIN_PATH='/usr/share/java,/usr/share/confluent-hub-components/,/usr/share/camel/'
ENV KAFKA_PRODUCER_MAX_REQUEST_SIZE=15728640
ENV CONNECT_PRODUCER_MAX_REQUEST_SIZE=15728640

EXPOSE ${CONNECT_REST_PORT}

ENTRYPOINT  ["/usr/local/bin/entry_point.sh"]
