diff --git a/.circleci/config.yml b/.circleci/config.yml
index 64241c4fd9..cd1129070f 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -308,11 +308,11 @@ jobs:
echo "default-key $(gpg --list-keys --with-colons | grep pub | cut -d':' -f5)" >> ~/.gnupg/gpg.conf
echo "pinentry-mode loopback" >> ~/.gnupg/gpg.conf
- run:
- name: Build shaded JAR
+ name: Build and deploy Maven artifacts
command: mvn -U clean -T1C -B deploy -DonlyJars ${CIRCLE_TAG:+-Prelease} -Deasyjacoco.skip=true
build-images:
- # use a full VM so we can run Docker / Buildx
+ # use a full VM so we can run Maven and Jib
executor: default-machine
steps:
@@ -334,20 +334,6 @@ jobs:
- generate-settings
- install-jdk
- - run:
- name: Build shaded JARs
- command: mvn -U -T1C -B install -DonlyJars
-
- - determine-version
- - compute-base-tag
- - setup-buildx:
- builder_name: "sqrl-builder"
-
- - run:
- name: Pull base image
- command: |
- docker pull datasqrl/base-sqrl:$BASE_TAG
-
- run:
name: Login to registries
command: |
@@ -355,32 +341,44 @@ jobs:
echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
- run:
- name: Build + push Docker images
+ name: Build and push Docker images using Jib
command: |
set -x
- build_and_push() {
- local repo="$1" ; shift
- local dir="$1" ; shift
-
- docker buildx build \
- --platform linux/amd64,linux/arm64 \
- --push \
- --build-arg BASE_TAG=$BASE_TAG \
- -t $REGISTRY/$repo:$TAG_SUFFIX \
- -f $dir/Dockerfile \
- $dir
-
- # tag :latest on release builds
- if [ "$LATEST_TAG" = "true" ]; then
- docker buildx imagetools create \
- -t $REGISTRY/$repo:latest \
- $REGISTRY/$repo:$TAG_SUFFIX
- fi
- }
-
- build_and_push cmd sqrl-cli
- build_and_push sqrl-server sqrl-server/sqrl-server-vertx
+ # Build and push CLI image
+ mvn -U -T1C -B package jib:build \
+ -pl sqrl-cli \
+ -am \
+ -Ddocker.image.tag=$TAG_SUFFIX \
+ -Djib.to.image=$REGISTRY/cmd:$TAG_SUFFIX \
+ -Deasyjacoco.skip=true
+
+ # Build and push server image
+ mvn -U -T1C -B package jib:build \
+ -pl sqrl-server/sqrl-server-vertx \
+ -am \
+ -Ddocker.image.tag=$TAG_SUFFIX \
+ -Djib.to.image=$REGISTRY/sqrl-server:$TAG_SUFFIX \
+ -Deasyjacoco.skip=true
+
+ # Tag :latest on release builds
+ if [ "$LATEST_TAG" = "true" ]; then
+ # Re-tag and push CLI as latest
+ mvn jib:build \
+ -pl sqrl-cli \
+ -Ddocker.image.tag=latest \
+ -Djib.to.image=$REGISTRY/cmd:latest \
+ -Djib.from.image=$REGISTRY/cmd:$TAG_SUFFIX \
+ -Deasyjacoco.skip=true
+
+ # Re-tag and push server as latest
+ mvn jib:build \
+ -pl sqrl-server/sqrl-server-vertx \
+ -Ddocker.image.tag=latest \
+ -Djib.to.image=$REGISTRY/sqrl-server:latest \
+ -Djib.from.image=$REGISTRY/sqrl-server:$TAG_SUFFIX \
+ -Deasyjacoco.skip=true
+ fi
docker-build-base-image:
machine:
diff --git a/pom.xml b/pom.xml
index 95c3c92893..198a68e069 100644
--- a/pom.xml
+++ b/pom.xml
@@ -95,6 +95,7 @@
17
17
UTF-8
+
0.8.0
@@ -103,6 +104,7 @@
local
false
+ false
4.8.0
@@ -170,6 +172,7 @@
3.9.4
2.5
2.33.4
+ 1.12.784
0.18.2
1.1.4
0.11.3
@@ -183,6 +186,7 @@
5.3
4.0.0
1.4.13
+ 3.4.4
0.1.4
@@ -200,11 +204,6 @@
sqrl-server-core
${project.version}
-
- com.datasqrl
- sqrl-server-vertx-base
- ${project.version}
-
com.datasqrl
sqrl-server-vertx
@@ -467,9 +466,9 @@
${flink.version}
- org.apache.flink
+ com.datasqrl.flink
flink-s3-fs-hadoop
- ${flink.version}
+ 1.19.3-13
org.apache.flink
@@ -858,6 +857,54 @@
false
+
+ com.google.cloud.tools
+ jib-maven-plugin
+ ${jib-maven-plugin.version}
+
+
+
+ amd64
+ linux
+
+
+ arm64
+ linux
+
+
+
+ /opt/sqrl
+
+
+
+
+ ${project.basedir}/src/main/jib
+
+ **/*
+
+
+
+
+
+ /opt/sqrl/entrypoint.sh
+ 755
+
+
+
+
+
+
+ build-docker-image
+
+ dockerBuild
+
+ package
+
+ ${skipDockerBuild}
+
+
+
+
@@ -916,7 +963,28 @@
org.apache.logging.log4j:log4j-slf4j2-impl
org.slf4j:slf4j-reload4j
- SLF4J 2.x is not allowed. Use log4j-slf4j-impl instead of log4j-slf4j2-impl
+ SLF4J 2.x is not allowed. Use log4j-slf4j-impl instead of log4j-slf4j2-impl.
+
+
+
+
+
+ enforce-flink-s3-version
+
+ enforce
+
+
+
+
+ true
+
+ *:*
+
+
+
+ org.apache.flink:flink-s3-fs-hadoop
+
+ Use com.datasqrl.flink:flink-s3-fs-hadoop instead of org.apache.flink:flink-s3-fs-hadoop to avoid shading conflicts.
@@ -1391,7 +1459,7 @@
true
- true
+ true
sqrl-testing-container
@@ -1422,7 +1490,7 @@
- true
+ true
sqrl-testing-container
@@ -1478,7 +1546,7 @@
-
+
only-jars
@@ -1488,7 +1556,29 @@
true
true
- true
+ true
+
+
+
+ skip-docker-build-onlyITs
+
+
+ onlyITs
+
+
+
+ true
+
+
+
+ skip-docker-build-onlyUTs
+
+
+ onlyUTs
+
+
+
+ true
diff --git a/sqrl-cli/Dockerfile b/sqrl-cli/Dockerfile
index bb9b915956..af9cc30067 100644
--- a/sqrl-cli/Dockerfile
+++ b/sqrl-cli/Dockerfile
@@ -19,7 +19,13 @@ FROM datasqrl/base-sqrl:${BASE_TAG}
COPY postgres.conf /etc/postgresql/${POSTGRES_VERSION}/main/conf.d/postgres.conf
COPY redpanda.yaml /etc/redpanda/redpanda.yaml
+
+# Copy dependencies first (this layer will be cached if dependencies don't change)
+COPY target/libs /opt/sqrl/libs
+
+# Copy the application jar (this layer changes more frequently)
COPY target/sqrl-cli.jar /opt/sqrl/sqrl-cli.jar
+
COPY entrypoint.sh /opt/sqrl/entrypoint.sh
ENV PATH="/opt/jbang/bin:${PATH}"
diff --git a/sqrl-cli/entrypoint.sh b/sqrl-cli/entrypoint.sh
index 45709d1cc5..d3bfd331bb 100755
--- a/sqrl-cli/entrypoint.sh
+++ b/sqrl-cli/entrypoint.sh
@@ -33,4 +33,5 @@ export BUILD_UID=$(stat -c '%u' /build)
export BUILD_GID=$(stat -c '%g' /build)
echo "Executing SQRL command: \"$1\" ..."
-exec java $SQRL_JVM_TOOL_OPTS $SQRL_JVM_ARGS -jar /opt/sqrl/sqrl-cli.jar "${@}"
+# Jib sets up the classpath automatically, so we can run the main class directly
+exec java $SQRL_JVM_TOOL_OPTS $SQRL_JVM_ARGS -cp "/opt/sqrl/libs/*:/opt/sqrl/classes" com.datasqrl.cli.DatasqrlCli "${@}"
diff --git a/sqrl-cli/pom.xml b/sqrl-cli/pom.xml
index 9290e30a98..159e839acb 100644
--- a/sqrl-cli/pom.xml
+++ b/sqrl-cli/pom.xml
@@ -43,16 +43,28 @@
com.datasqrl
- sqrl-server-vertx-base
+ sqrl-server-vertx
com.datasqrl.flinkrunner
stdlib-utils
+
com.datasqrl.flinkrunner
flink-sql-runner
+
+
+ org.apache.flink
+ flink-s3-fs-hadoop
+
+
+
+
+
+ com.datasqrl.flink
+ flink-s3-fs-hadoop
@@ -84,10 +96,6 @@
org.apache.flink
flink-json
-
- org.apache.flink
- flink-hadoop-fs
-
org.apache.flink
flink-test-utils
@@ -260,6 +268,27 @@
+
+ org.apache.hadoop
+ hadoop-aws
+ ${hadoop.version}
+
+
+ com.amazonaws
+ aws-java-sdk-bundle
+
+
+
+
+ com.amazonaws
+ aws-java-sdk-core
+ ${aws-java-sdk.version}
+
+
+ com.amazonaws
+ aws-java-sdk-s3
+ ${aws-java-sdk.version}
+
@@ -361,98 +390,43 @@
test-jar
test
-
-
-
- org.apache.flink
- flink-s3-fs-hadoop
-
+
+
+
+ true
+
+
+ false
+
+ github
+ https://maven.pkg.github.com/DataSQRL/flink-s3-fs-hadoop
+
+
+
+
- org.apache.maven.plugins
- maven-shade-plugin
-
-
-
- shade
-
- package
-
- sqrl-cli
- true
- false
-
-
- com.datasqrl.cli.DatasqrlCli
-
-
-
-
-
- *:*
-
- META-INF/*.SF
- META-INF/*.DSA
- META-INF/*.RSA
- META-INF/versions/19/**/*
-
-
-
- org.apache.flink:flink-s3-fs-hadoop
-
- com/fasterxml/jackson/**
- com/google/**
-
-
-
-
-
- org.objectweb.asm.
- sqrl.asm.
-
-
- jakarta.
- sqrl.jakarta.
-
-
- io.vertx.
- sqrl.vertx.
-
-
- com.sun.el.
- sqrl.el.
-
-
- com.fasterxml.jackson.
- sqrl.jackson.
-
-
- org.yaml.snakeyaml.
- sqrl.snakeyaml.
-
-
-
-
-
-
-
-
- com.spotify
- dockerfile-maven-plugin
-
-
- build-docker-image
-
- build
-
- package
-
-
+ com.google.cloud.tools
+ jib-maven-plugin
+
+
+ datasqrl/base-sqrl:latest
+
+
+ ${docker.image.name}:${docker.image.tag}
+
+
+ com.datasqrl.cli.DatasqrlCli
+ /build
+ /opt/sqrl/entrypoint.sh
+
+ --add-exports=java.base/sun.net.util=ALL-UNNAMED --add-exports=java.rmi/sun.rmi.registry=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED --add-exports=java.security.jgss/sun.security.krb5=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.base/java.time=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.locks=ALL-UNNAMED
+
+
+
diff --git a/sqrl-server/sqrl-server-vertx/Dockerfile b/sqrl-cli/src/main/jib/etc/postgresql/17/main/conf.d/postgres.conf
similarity index 54%
rename from sqrl-server/sqrl-server-vertx/Dockerfile
rename to sqrl-cli/src/main/jib/etc/postgresql/17/main/conf.d/postgres.conf
index 8a7e2b04e8..a6bc579bd7 100644
--- a/sqrl-server/sqrl-server-vertx/Dockerfile
+++ b/sqrl-cli/src/main/jib/etc/postgresql/17/main/conf.d/postgres.conf
@@ -14,19 +14,4 @@
# limitations under the License.
#
-FROM eclipse-temurin:17
-
-# Create directories for application, configuration, and logs
-RUN mkdir -p /opt/sqrl/app /opt/sqrl/config /opt/sqrl/logs
-
-# Copy application jar to separate directory
-COPY target/vertx-server.jar /opt/sqrl/app/vertx-server.jar
-COPY src/main/resources/log4j2-debug.properties /opt/sqrl/app/log4j2-debug.properties
-COPY entrypoint.sh /entrypoint.sh
-
-RUN chmod +x /entrypoint.sh
-
-# Set working directory to config directory by default
-WORKDIR /opt/sqrl/config
-
-ENTRYPOINT ["/entrypoint.sh"]
+data_directory = '/data/postgres'
diff --git a/sqrl-cli/src/main/jib/etc/redpanda/redpanda.yaml b/sqrl-cli/src/main/jib/etc/redpanda/redpanda.yaml
new file mode 100644
index 0000000000..5c0aae752c
--- /dev/null
+++ b/sqrl-cli/src/main/jib/etc/redpanda/redpanda.yaml
@@ -0,0 +1,34 @@
+#
+# Copyright © 2021 DataSQRL (contact@datasqrl.com)
+#
+# Licensed 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.
+#
+
+redpanda:
+ data_directory: /data/redpanda
+ node_id: 0
+ seed_servers: []
+ kafka_api:
+ - address: 0.0.0.0
+ port: 9092
+ name: PLAINTEXT
+ advertised_kafka_api:
+ - address: 127.0.0.1
+ port: 9092
+ name: PLAINTEXT
+rpk:
+ overprovisioned: true
+schema_registry:
+ schema_registry_api:
+ - address: 0.0.0.0
+ port: 8086
diff --git a/sqrl-cli/src/main/jib/opt/sqrl/entrypoint.sh b/sqrl-cli/src/main/jib/opt/sqrl/entrypoint.sh
new file mode 100755
index 0000000000..cd0bc849e8
--- /dev/null
+++ b/sqrl-cli/src/main/jib/opt/sqrl/entrypoint.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+#
+# Copyright © 2021 DataSQRL (contact@datasqrl.com)
+#
+# Licensed 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.
+#
+
+set -e
+
+# Enable debug mode if SQRL_DEBUG environment variable is set
+if [[ -n "${SQRL_DEBUG+x}" && -n "$SQRL_DEBUG" ]]; then
+ set -x
+fi
+
+cd /build
+
+# Todo: there is a target flag we need to parse and set
+export DATA_PATH=/build/build/deploy/flink/data
+export UDF_PATH=/build/build/deploy/flink/lib
+
+# Get the UID/GID of the /build directory to ensure files are created with correct ownership
+export BUILD_UID=$(stat -c '%u' /build)
+export BUILD_GID=$(stat -c '%g' /build)
+
+echo "Executing SQRL command: \"$1\" ..."
+# Read classpath from Jib-generated file to include resources directory
+CLASSPATH=$(cat /opt/sqrl/jib-classpath-file)
+exec java $SQRL_JVM_ARGS -cp "$CLASSPATH" com.datasqrl.cli.DatasqrlCli "${@}"
diff --git a/sqrl-planner/pom.xml b/sqrl-planner/pom.xml
index 58a6cdef2a..5dd9d0ee1c 100644
--- a/sqrl-planner/pom.xml
+++ b/sqrl-planner/pom.xml
@@ -127,7 +127,7 @@
com.datasqrl
- sqrl-server-vertx-base
+ sqrl-server-vertx
compile
@@ -174,11 +174,6 @@
guice
${guice.version}
-
- com.google.inject.extensions
- guice-multibindings
- ${guice-multibindings.version}
-
com.fasterxml.jackson.datatype
jackson-datatype-jdk8
diff --git a/sqrl-server/pom.xml b/sqrl-server/pom.xml
index bdf1ae6df3..260ce5f9d0 100644
--- a/sqrl-server/pom.xml
+++ b/sqrl-server/pom.xml
@@ -30,7 +30,6 @@
sqrl-server-core
- sqrl-server-vertx-base
sqrl-server-vertx
diff --git a/sqrl-server/sqrl-server-vertx-base/pom.xml b/sqrl-server/sqrl-server-vertx-base/pom.xml
deleted file mode 100644
index f00aa400a6..0000000000
--- a/sqrl-server/sqrl-server-vertx-base/pom.xml
+++ /dev/null
@@ -1,272 +0,0 @@
-
-
-
- 4.0.0
-
- com.datasqrl
- sqrl-server
- 0.9-SNAPSHOT
-
-
- sqrl-server-vertx-base
- SQRL :: Server :: Vert.x Base
-
-
-
-
- io.vertx
- vertx-config
-
-
- io.vertx
- vertx-auth-jwt
-
-
- io.vertx
- vertx-auth-properties
-
-
- jakarta.annotation
- jakarta.annotation-api
- ${jakarta.annotation.version}
-
-
- io.vertx
- vertx-jdbc-client
-
-
- io.vertx
- vertx-web
-
-
- io.vertx
- vertx-health-check
-
-
- io.vertx
- vertx-micrometer-metrics
-
-
- io.micrometer
- micrometer-registry-prometheus
-
-
-
- com.symbaloo
- graphql-micrometer
- ${graphql-micrometer.version}
-
-
-
- io.vertx
- vertx-junit5
- test
-
-
-
- junit
- junit
-
-
-
-
- io.vertx
- vertx-web-client
- test
-
-
- io.vertx
- vertx-web-graphql
-
-
- io.vertx
- vertx-pg-client
-
-
- io.agroal
- agroal-pool
-
-
- org.apache.calcite
- calcite-core
- ${calcite-core.version}
- provided
-
-
- org.reactivestreams
- reactive-streams
-
-
-
-
- io.vertx
- vertx-kafka-client
-
-
- io.projectreactor
- reactor-core
-
-
-
- io.netty
- netty-codec
-
-
- org.duckdb
- duckdb_jdbc
- ${duckdb.version}
-
-
- net.snowflake
- snowflake-jdbc
- ${snowflake-jdbc.version}
-
-
- com.fasterxml.jackson.datatype
- jackson-datatype-jsr310
-
-
-
-
- org.slf4j
- slf4j-api
-
-
- org.apache.logging.log4j
- log4j-api
-
-
- org.apache.logging.log4j
- log4j-core
-
-
- org.apache.logging.log4j
- log4j-slf4j-impl
-
-
-
- org.postgresql
- postgresql
-
-
-
-
- org.testcontainers
- testcontainers
- test
-
-
- org.testcontainers
- junit-jupiter
- test
-
-
- org.testcontainers
- postgresql
- test
-
-
-
- io.vertx
- vertx-core
-
-
- org.apache.kafka
- kafka-clients
- test
- test
-
-
- org.apache.kafka
- kafka_${scala.version}
- test
-
-
- org.apache.kafka
- kafka_${scala.version}
- test
- test
-
-
- org.apache.kafka
- kafka-streams
- test
-
-
- org.apache.kafka
- kafka-streams
- test
- test
-
-
- org.apache.kafka
- kafka-streams-test-utils
- test
-
-
- com.datasqrl
- sqrl-server-core
-
-
- org.mockito
- mockito-core
- test
-
-
-
-
- com.networknt
- json-schema-validator
-
-
-
-
- io.swagger.core.v3
- swagger-core
- ${swagger-core.version}
-
-
- io.swagger.core.v3
- swagger-models
- ${swagger-core.version}
-
-
- io.swagger.core.v3
- swagger-annotations
- ${swagger-core.version}
-
-
-
-
-
-
- io.reactiverse
- vertx-maven-plugin
-
-
- initialize
-
- initialize
-
-
-
-
-
-
-
diff --git a/sqrl-server/sqrl-server-vertx/pom.xml b/sqrl-server/sqrl-server-vertx/pom.xml
index 121590b0f7..a3d6f402d4 100644
--- a/sqrl-server/sqrl-server-vertx/pom.xml
+++ b/sqrl-server/sqrl-server-vertx/pom.xml
@@ -28,58 +28,274 @@
SQRL :: Server :: Vert.x
- com.datasqrl.graphql.HttpServerVerticle
- false
datasqrl/sqrl-server
-
+
com.datasqrl
- sqrl-server-vertx-base
+ sqrl-server-core
+
+
+ io.vertx
+ vertx-config
+
+
+ io.vertx
+ vertx-auth-jwt
+
+
+ io.vertx
+ vertx-auth-properties
+
+
+ jakarta.annotation
+ jakarta.annotation-api
+ ${jakarta.annotation.version}
+
+
+ io.vertx
+ vertx-jdbc-client
+
+
+ io.vertx
+ vertx-web
+
+
+ io.vertx
+ vertx-health-check
+
+
+ io.vertx
+ vertx-micrometer-metrics
+
+
+ io.micrometer
+ micrometer-registry-prometheus
+
+
+ com.symbaloo
+ graphql-micrometer
+ ${graphql-micrometer.version}
+
+
+ io.vertx
+ vertx-web-graphql
+
+
+ io.vertx
+ vertx-pg-client
+
+
+ io.agroal
+ agroal-pool
+
+
+ org.apache.calcite
+ calcite-core
+ ${calcite-core.version}
+ provided
+
+
+ org.reactivestreams
+ reactive-streams
+
+
+ io.vertx
+ vertx-core
+
io.vertx
vertx-launcher-application
+
+
+
+ io.vertx
+ vertx-kafka-client
+
+
+ io.projectreactor
+ reactor-core
+
+
+
+
+ io.netty
+ netty-codec
+
+
+ org.duckdb
+ duckdb_jdbc
+ ${duckdb.version}
+
+
+ net.snowflake
+ snowflake-jdbc
+ ${snowflake-jdbc.version}
+
+
+ org.postgresql
+ postgresql
+
+
+
+
+ com.fasterxml.jackson.datatype
+ jackson-datatype-jsr310
+
+
+
+
+ com.networknt
+ json-schema-validator
+
+
+
+
+ io.swagger.core.v3
+ swagger-core
+ ${swagger-core.version}
+
+
+ io.swagger.core.v3
+ swagger-models
+ ${swagger-core.version}
+
+
+ io.swagger.core.v3
+ swagger-annotations
+ ${swagger-core.version}
+
+
+
+
+ org.slf4j
+ slf4j-api
+
+
+ org.apache.logging.log4j
+ log4j-api
+
+
+ org.apache.logging.log4j
+ log4j-core
+
+
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+
+
+
+
+ io.vertx
+ vertx-junit5
+ test
+
+
+
+ junit
+ junit
+
+
+
+
+ io.vertx
+ vertx-web-client
+ test
+
+
+ org.testcontainers
+ testcontainers
+ test
+
+
+ org.testcontainers
+ junit-jupiter
+ test
+
+
+ org.testcontainers
+ postgresql
+ test
+
+
+ org.apache.kafka
+ kafka-clients
+ test
+ test
+
+
+ org.apache.kafka
+ kafka_${scala.version}
+ test
+
+
+ org.apache.kafka
+ kafka_${scala.version}
+ test
+ test
+
+
+ org.apache.kafka
+ kafka-streams
+ test
+
+
+ org.apache.kafka
+ kafka-streams
+ test
+ test
+
+
+ org.apache.kafka
+ kafka-streams-test-utils
+ test
+
+
+ org.mockito
+ mockito-core
+ test
+
vertx-server
+
io.reactiverse
vertx-maven-plugin
-
- true
- true
- com.datasqrl.graphql.SqrlLauncher
- ${skipVertexFatJar}
-
- package
+ initialize
- package
+ initialize
+
- com.spotify
- dockerfile-maven-plugin
-
-
- build-docker-image
-
- build
-
- package
-
-
+ com.google.cloud.tools
+ jib-maven-plugin
+
+
+ eclipse-temurin:17
+
+
+ ${docker.image.name}:${docker.image.tag}
+
+
+ com.datasqrl.graphql.SqrlLauncher
+ /opt/sqrl/config
+ /opt/sqrl/entrypoint.sh
+
+
@@ -90,26 +306,8 @@
-
- com.marvinformatics.jacoco
- easy-jacoco-maven-plugin
- ${easy-jacoco-maven-plugin.version}
-
-
- instrument-uber-jar
-
- instrument-jar
-
-
- ${project.build.directory}/vertx-server.jar
- ${project.build.directory}/vertx-server.jar
-
- com/datasqrl/*
-
-
-
-
-
+
+
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/AbstractBridgeVerticle.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/AbstractBridgeVerticle.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/AbstractBridgeVerticle.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/AbstractBridgeVerticle.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/DetailedRequestTracer.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/DetailedRequestTracer.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/DetailedRequestTracer.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/DetailedRequestTracer.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/GraphQLServerVerticle.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/GraphQLServerVerticle.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/GraphQLServerVerticle.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/GraphQLServerVerticle.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/HttpServerVerticle.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/HttpServerVerticle.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/HttpServerVerticle.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/HttpServerVerticle.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/JdbcClientsConfig.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/JdbcClientsConfig.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/JdbcClientsConfig.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/JdbcClientsConfig.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/JsonEnvVarDeserializer.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/JsonEnvVarDeserializer.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/JsonEnvVarDeserializer.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/JsonEnvVarDeserializer.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/McpBridgeVerticle.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/McpBridgeVerticle.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/McpBridgeVerticle.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/McpBridgeVerticle.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/MutationConfigurationImpl.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/MutationConfigurationImpl.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/MutationConfigurationImpl.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/MutationConfigurationImpl.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/RestBridgeVerticle.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/RestBridgeVerticle.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/RestBridgeVerticle.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/RestBridgeVerticle.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/SqrlObjectMapper.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/SqrlObjectMapper.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/SqrlObjectMapper.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/SqrlObjectMapper.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/SubscriptionConfigurationImpl.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/SubscriptionConfigurationImpl.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/SubscriptionConfigurationImpl.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/SubscriptionConfigurationImpl.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/VertxContext.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/VertxContext.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/VertxContext.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/VertxContext.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/VertxJdbcClient.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/VertxJdbcClient.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/VertxJdbcClient.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/VertxJdbcClient.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/VertxQueryExecutionContext.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/VertxQueryExecutionContext.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/VertxQueryExecutionContext.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/VertxQueryExecutionContext.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/auth/AuthMetadataReader.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/auth/AuthMetadataReader.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/auth/AuthMetadataReader.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/auth/AuthMetadataReader.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/auth/JwtFailureHandler.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/auth/JwtFailureHandler.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/auth/JwtFailureHandler.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/auth/JwtFailureHandler.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/CorsHandlerOptions.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/CorsHandlerOptions.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/CorsHandlerOptions.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/CorsHandlerOptions.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/JdbcConfig.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/JdbcConfig.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/JdbcConfig.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/JdbcConfig.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/KafkaConfig.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/KafkaConfig.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/KafkaConfig.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/KafkaConfig.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/ServerConfig.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/ServerConfig.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/ServerConfig.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/ServerConfig.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/ServerConfigUtil.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/ServerConfigUtil.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/ServerConfigUtil.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/ServerConfigUtil.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/ServletConfig.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/ServletConfig.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/ServletConfig.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/ServletConfig.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/SwaggerConfig.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/SwaggerConfig.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/config/SwaggerConfig.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/config/SwaggerConfig.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/io/SinkConsumer.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/io/SinkConsumer.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/io/SinkConsumer.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/io/SinkConsumer.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/io/SinkProducer.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/io/SinkProducer.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/io/SinkProducer.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/io/SinkProducer.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/io/SinkResult.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/io/SinkResult.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/io/SinkResult.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/io/SinkResult.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/kafka/JsonDeserializer.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/kafka/JsonDeserializer.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/kafka/JsonDeserializer.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/kafka/JsonDeserializer.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/kafka/JsonSerializer.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/kafka/JsonSerializer.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/kafka/JsonSerializer.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/kafka/JsonSerializer.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/kafka/KafkaDataFetcherFactory.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/kafka/KafkaDataFetcherFactory.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/kafka/KafkaDataFetcherFactory.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/kafka/KafkaDataFetcherFactory.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/kafka/KafkaSinkConsumer.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/kafka/KafkaSinkConsumer.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/kafka/KafkaSinkConsumer.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/kafka/KafkaSinkConsumer.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/kafka/KafkaSinkProducer.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/kafka/KafkaSinkProducer.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/kafka/KafkaSinkProducer.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/kafka/KafkaSinkProducer.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/postgres_log/PostgresDataFetcherFactory.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/postgres_log/PostgresDataFetcherFactory.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/postgres_log/PostgresDataFetcherFactory.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/postgres_log/PostgresDataFetcherFactory.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/postgres_log/PostgresListenNotifyConsumer.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/postgres_log/PostgresListenNotifyConsumer.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/postgres_log/PostgresListenNotifyConsumer.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/postgres_log/PostgresListenNotifyConsumer.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/postgres_log/PostgresSinkConsumer.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/postgres_log/PostgresSinkConsumer.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/postgres_log/PostgresSinkConsumer.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/postgres_log/PostgresSinkConsumer.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/swagger/SwaggerService.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/swagger/SwaggerService.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/graphql/swagger/SwaggerService.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/graphql/swagger/SwaggerService.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/util/JsonMergeUtils.java b/sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/util/JsonMergeUtils.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/main/java/com/datasqrl/util/JsonMergeUtils.java
rename to sqrl-server/sqrl-server-vertx/src/main/java/com/datasqrl/util/JsonMergeUtils.java
diff --git a/sqrl-server/sqrl-server-vertx/src/main/jib/opt/sqrl/app/log4j2-debug.properties b/sqrl-server/sqrl-server-vertx/src/main/jib/opt/sqrl/app/log4j2-debug.properties
new file mode 100644
index 0000000000..cf98a2569b
--- /dev/null
+++ b/sqrl-server/sqrl-server-vertx/src/main/jib/opt/sqrl/app/log4j2-debug.properties
@@ -0,0 +1,49 @@
+#
+# Copyright © 2021 DataSQRL (contact@datasqrl.com)
+#
+# Licensed 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.
+#
+
+# Console appender
+appender.console.type = Console
+appender.console.name = Console
+appender.console.target = SYSTEM_OUT
+appender.console.layout.type = PatternLayout
+appender.console.layout.pattern = %d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n
+
+# RollingFile appender for DetailedRequestTracer
+appender.requestTrace.type = RollingFile
+appender.requestTrace.name = RequestTraceFile
+appender.requestTrace.fileName = /opt/sqrl/logs/request-trace.log
+appender.requestTrace.filePattern = /opt/sqrl/logs/request-trace.%i.log.gz
+appender.requestTrace.layout.type = PatternLayout
+appender.requestTrace.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n
+appender.requestTrace.policies.type = Policies
+appender.requestTrace.policies.size.type = SizeBasedTriggeringPolicy
+appender.requestTrace.policies.size.size = 50MB
+appender.requestTrace.strategy.type = DefaultRolloverStrategy
+appender.requestTrace.strategy.max = 10
+
+# Flink logger
+logger.flink.name = org.apache.flink
+logger.flink.level = WARN
+
+# DetailedRequestTracer logger
+logger.requestTracer.name = com.datasqrl.graphql.DetailedRequestTracer
+logger.requestTracer.level = DEBUG
+logger.requestTracer.additivity = false
+logger.requestTracer.appenderRef.file.ref = RequestTraceFile
+
+# Root logger
+rootLogger.level = INFO
+rootLogger.appenderRef.console.ref = Console
diff --git a/sqrl-server/sqrl-server-vertx/entrypoint.sh b/sqrl-server/sqrl-server-vertx/src/main/jib/opt/sqrl/entrypoint.sh
similarity index 82%
rename from sqrl-server/sqrl-server-vertx/entrypoint.sh
rename to sqrl-server/sqrl-server-vertx/src/main/jib/opt/sqrl/entrypoint.sh
index 51534f11fd..ccaefdd57a 100755
--- a/sqrl-server/sqrl-server-vertx/entrypoint.sh
+++ b/sqrl-server/sqrl-server-vertx/src/main/jib/opt/sqrl/entrypoint.sh
@@ -26,5 +26,6 @@ fi
# Change to config directory (default WORKDIR)
cd /opt/sqrl/config
-# Run the application jar from the app directory using SqrlLauncher to enable metrics
-exec java $SQRL_JVM_ARGS -cp /opt/sqrl/app/vertx-server.jar com.datasqrl.graphql.SqrlLauncher
+# Read classpath from Jib-generated file to include resources directory
+CLASSPATH=$(cat /opt/sqrl/jib-classpath-file)
+exec java $SQRL_JVM_ARGS -cp "$CLASSPATH" com.datasqrl.graphql.SqrlLauncher
diff --git a/sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/GraphQLJwtHandlerIT.java b/sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/GraphQLJwtHandlerIT.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/GraphQLJwtHandlerIT.java
rename to sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/GraphQLJwtHandlerIT.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/JsonEnvVarDeserializerTest.java b/sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/JsonEnvVarDeserializerTest.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/JsonEnvVarDeserializerTest.java
rename to sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/JsonEnvVarDeserializerTest.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/RestBridgeVerticleTest.java b/sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/RestBridgeVerticleTest.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/RestBridgeVerticleTest.java
rename to sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/RestBridgeVerticleTest.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/VertxContextTest.java b/sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/VertxContextTest.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/VertxContextTest.java
rename to sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/VertxContextTest.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/VertxGraphQLBuilderIT.java b/sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/VertxGraphQLBuilderIT.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/VertxGraphQLBuilderIT.java
rename to sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/VertxGraphQLBuilderIT.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/WriteIT.java b/sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/WriteIT.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/WriteIT.java
rename to sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/WriteIT.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/config/ServerConfigTest.java b/sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/config/ServerConfigTest.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/config/ServerConfigTest.java
rename to sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/config/ServerConfigTest.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/config/ServerConfigUtilTest.java b/sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/config/ServerConfigUtilTest.java
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/test/java/com/datasqrl/graphql/config/ServerConfigUtilTest.java
rename to sqrl-server/sqrl-server-vertx/src/test/java/com/datasqrl/graphql/config/ServerConfigUtilTest.java
diff --git a/sqrl-server/sqrl-server-vertx-base/src/test/resources/log4j2-test.properties b/sqrl-server/sqrl-server-vertx/src/test/resources/log4j2-test.properties
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/test/resources/log4j2-test.properties
rename to sqrl-server/sqrl-server-vertx/src/test/resources/log4j2-test.properties
diff --git a/sqrl-server/sqrl-server-vertx-base/src/test/resources/testdata/vertx-rest.json b/sqrl-server/sqrl-server-vertx/src/test/resources/testdata/vertx-rest.json
similarity index 100%
rename from sqrl-server/sqrl-server-vertx-base/src/test/resources/testdata/vertx-rest.json
rename to sqrl-server/sqrl-server-vertx/src/test/resources/testdata/vertx-rest.json
diff --git a/sqrl-testing/sqrl-testing-container/pom.xml b/sqrl-testing/sqrl-testing-container/pom.xml
index d42e66d8f6..fdaeb611d4 100644
--- a/sqrl-testing/sqrl-testing-container/pom.xml
+++ b/sqrl-testing/sqrl-testing-container/pom.xml
@@ -130,9 +130,9 @@
test
- org.apache.flink
- flink-s3-fs-hadoop
- ${flink.version}
+ com.amazonaws
+ aws-java-sdk-s3
+ ${aws-java-sdk.version}
test