From 68c9f0912ef9b5942a3b919ff54504e62baf09b2 Mon Sep 17 00:00:00 2001 From: Jiri Pechanec Date: Fri, 13 Sep 2024 06:52:31 +0200 Subject: [PATCH 1/2] DBZ-8175 Add missing Jackson Apicurio dependencies --- connect-base/3.0/Dockerfile | 4 ++++ connect-base/3.0/docker-maven-download.sh | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/connect-base/3.0/Dockerfile b/connect-base/3.0/Dockerfile index 26744a57..f70b2b0b 100644 --- a/connect-base/3.0/Dockerfile +++ b/connect-base/3.0/Dockerfile @@ -23,6 +23,7 @@ ENV KAFKA_CONNECT_PLUGINS_DIR=$KAFKA_HOME/connect \ CONNECT_PLUGIN_PATH=$KAFKA_CONNECT_PLUGINS_DIR \ MAVEN_DEP_DESTINATION=$KAFKA_HOME/libs \ APICURIO_VERSION=2.6.2.Final \ + APICURIO_JACKSON_VERSION=2.13.4 \ JOLOKIA_VERSION=1.7.2 \ OPENTELEMETRY_VERSION=1.23.1 \ OPENTELEMETRY_INSTRUMENTATION_VERSION=1.23.0 @@ -43,6 +44,9 @@ RUN mkdir "$KAFKA_CONNECT_PLUGINS_DIR" "$EXTERNAL_LIBS_DIR" # on the classpath, which results in arcane NoSuchMethodError exceptions. # RUN docker-maven-download apicurio "$APICURIO_VERSION" 25e9ef205952c6ecb03cfb59098c229f +RUN docker-maven-download apicurio-dep com/fasterxml/jackson/module jackson-module-afterburner "$APICURIO_JACKSON_VERSION" de5658c5e60f0953ca0a589519b4f9f5 +RUN docker-maven-download apicurio-dep com/fasterxml/jackson/module jackson-module-jaxb-annotations "$APICURIO_JACKSON_VERSION" 9bd819527055fbe2bc017021bb2fc913 +RUN docker-maven-download apicurio-dep com/fasterxml/jackson/module jackson-module-scala_2.13 "$APICURIO_JACKSON_VERSION" c4e14bbe53bd8e4d1f9f4c05858e2b61 RUN docker-maven-download central org/jolokia jolokia-jvm "$JOLOKIA_VERSION" d489d62d1143e6a2e85a869a4b824a67 RUN docker-maven-download otel io/opentelemetry opentelemetry-api "$OPENTELEMETRY_VERSION" e198a9568ce31a82faaa26f328388e89 RUN docker-maven-download otel io/opentelemetry opentelemetry-context "$OPENTELEMETRY_VERSION" 783594a506dbf035e686776d5bcb4bfc diff --git a/connect-base/3.0/docker-maven-download.sh b/connect-base/3.0/docker-maven-download.sh index 6052115f..31f451bc 100755 --- a/connect-base/3.0/docker-maven-download.sh +++ b/connect-base/3.0/docker-maven-download.sh @@ -90,6 +90,11 @@ maven_apicurio_converter() { tar -xzf "$DOWNLOAD_FILE" -C "$EXTERNAL_LIBS_DIR/apicurio" && rm "$DOWNLOAD_FILE" } +maven_apicurio_dep() { + maven_dep $MAVEN_REPO_CENTRAL $1 $2 $3 "$2-$3.jar" $4 + mv "$DOWNLOAD_FILE" "$EXTERNAL_LIBS_DIR/apicurio" +} + maven_otel_libs() { if [[ -z "$EXTERNAL_LIBS_DIR" ]] ; then echo "WARNING: EXTERNAL_LIBS_DIR is not set. Skipping loading OTEL libraries ..." @@ -128,6 +133,9 @@ case $1 in "apicurio" ) shift maven_apicurio_converter ${@} ;; + "apicurio-dep" ) shift + maven_apicurio_dep ${@} + ;; "otel" ) shift maven_otel_libs ${@} ;; From e0ab5805fb5f1c6ba843b8b60ae160bf73203766 Mon Sep 17 00:00:00 2001 From: Jiri Pechanec Date: Fri, 13 Sep 2024 07:25:48 +0200 Subject: [PATCH 2/2] DBZ-8175 Remove extra Jackson libs from Apicurio dir --- connect-base/3.0/Dockerfile | 4 ---- connect-base/3.0/docker-maven-download.sh | 2 ++ 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/connect-base/3.0/Dockerfile b/connect-base/3.0/Dockerfile index f70b2b0b..26744a57 100644 --- a/connect-base/3.0/Dockerfile +++ b/connect-base/3.0/Dockerfile @@ -23,7 +23,6 @@ ENV KAFKA_CONNECT_PLUGINS_DIR=$KAFKA_HOME/connect \ CONNECT_PLUGIN_PATH=$KAFKA_CONNECT_PLUGINS_DIR \ MAVEN_DEP_DESTINATION=$KAFKA_HOME/libs \ APICURIO_VERSION=2.6.2.Final \ - APICURIO_JACKSON_VERSION=2.13.4 \ JOLOKIA_VERSION=1.7.2 \ OPENTELEMETRY_VERSION=1.23.1 \ OPENTELEMETRY_INSTRUMENTATION_VERSION=1.23.0 @@ -44,9 +43,6 @@ RUN mkdir "$KAFKA_CONNECT_PLUGINS_DIR" "$EXTERNAL_LIBS_DIR" # on the classpath, which results in arcane NoSuchMethodError exceptions. # RUN docker-maven-download apicurio "$APICURIO_VERSION" 25e9ef205952c6ecb03cfb59098c229f -RUN docker-maven-download apicurio-dep com/fasterxml/jackson/module jackson-module-afterburner "$APICURIO_JACKSON_VERSION" de5658c5e60f0953ca0a589519b4f9f5 -RUN docker-maven-download apicurio-dep com/fasterxml/jackson/module jackson-module-jaxb-annotations "$APICURIO_JACKSON_VERSION" 9bd819527055fbe2bc017021bb2fc913 -RUN docker-maven-download apicurio-dep com/fasterxml/jackson/module jackson-module-scala_2.13 "$APICURIO_JACKSON_VERSION" c4e14bbe53bd8e4d1f9f4c05858e2b61 RUN docker-maven-download central org/jolokia jolokia-jvm "$JOLOKIA_VERSION" d489d62d1143e6a2e85a869a4b824a67 RUN docker-maven-download otel io/opentelemetry opentelemetry-api "$OPENTELEMETRY_VERSION" e198a9568ce31a82faaa26f328388e89 RUN docker-maven-download otel io/opentelemetry opentelemetry-context "$OPENTELEMETRY_VERSION" 783594a506dbf035e686776d5bcb4bfc diff --git a/connect-base/3.0/docker-maven-download.sh b/connect-base/3.0/docker-maven-download.sh index 31f451bc..4cdb212f 100755 --- a/connect-base/3.0/docker-maven-download.sh +++ b/connect-base/3.0/docker-maven-download.sh @@ -88,6 +88,8 @@ maven_apicurio_converter() { maven_dep $MAVEN_REPO_CENTRAL "io/apicurio" "$APICURIO_CONVERTER_PACKAGE" "$1" "$APICURIO_CONVERTER_PACKAGE-$1.tar.gz" "$2" mkdir "$EXTERNAL_LIBS_DIR/apicurio" tar -xzf "$DOWNLOAD_FILE" -C "$EXTERNAL_LIBS_DIR/apicurio" && rm "$DOWNLOAD_FILE" + # Apicurio package contains Jackson libraries that conflict with the one provided + rm "$EXTERNAL_LIBS_DIR"/apicurio/jackson-{core,annotations,databind,datatype-jdk8}* } maven_apicurio_dep() {