Hi all, As mentioned already in another email earlier today, we still have a few PRs to merge to fully achieve the transition to Quarkus.
The first one is the Docker PR: https://github.com/apache/polaris/pull/610 Since it's an important topic, I would like to summarize the most important changes here: 1) The Dockerfile at the root of the repo has gone. It's not needed anymore, and has security flaws – see https://github.com/apache/polaris/issues/537 for details). If users want to build a local image for adhoc testing, this can now be done by simply building Polaris with: ./gradlew assemble -Dquarkus.container-image.build=true 2) The docker-compose file for regression tests has been moved to the regtests folder. Regression tests can be run with: ./gradlew assemble -Dquarkus.container-image.build=true docker compose -f regtests/docker-compose.yml up --build --exit-code-from regtest 3) Eclipse Link and JDBC drivers This is perhaps the most important change. With Quarkus, it's impossible to add jars at runtime. Therefore, Polaris server artifacts *must* be built with all the required dependencies. >From now on, the polaris-eclipse-link module includes 2 JDBC drivers: H2 and Postgres. Also from now on, the polaris-quarkus-server artifacts (distribution tarballs, zips and the Docker images) will contain the 2 drivers. >From the legal perspective, both drivers are compatible with ASF guidelines and the license and notice files were updated accordingly. I would argue that this change greatly simplifies the statu quo by not requiring users to include their own JDBC jars anymore, and make Polaris with EclipseLink "just work". There is also no more need to modify the Dockerfiles to include EclipseLink dependencies via build args. We can add more JDBC drivers in the future if we want, for example, the MariaDB JDBC driver is compatible with ASF and connects to both MySQL and MariaDB databases. 4) Future binary releases With this PR, the distribution tarballs and zips generated for polaris-quarkus-server are valid ones. You can generate the distribution artifacts with: ./gradlew clean build You can unpack and run the distribution zip with the following commands: cd quarkus/server/build/distributions unzip polaris-quarkus-server-1.0.0-incubating-SNAPSHOT.zip cd polaris-quarkus-server-1.0.0-incubating-SNAPSHOT java -jar quarkus-run.jar However, this PR intentionally leaves the question of Docker image releases for a follow-up discussion, mainly because we still need to figure out our strategy wrt which registries we want to push to, and which platforms we want to support. -- I am eager to get the community's feedback on this, either in this email thread or in the PR directly. Thanks, Alex