diff --git a/.github/workflows/native-images-tests.yml b/.github/workflows/native-images-tests.yml index 5546fc8b6e..cd55f8d95d 100644 --- a/.github/workflows/native-images-tests.yml +++ b/.github/workflows/native-images-tests.yml @@ -45,7 +45,7 @@ jobs: mvn install -B -e -DskipTests -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn \ -Dquarkus.native.remote-container-build=false -Dquarkus.native.container-build=true \ -Pbuild-native-image,metrics-prometheus -am \ - -pl :hono-service-auth,:hono-service-command-router,:hono-service-device-registry-mongodb,\ + -pl :hono-service-auth,:hono-service-command-router,:hono-service-device-registry-mongodb,:hono-service-device-registry-jdbc,\ :hono-adapter-mqtt,:hono-adapter-amqp,:hono-adapter-coap,:hono-adapter-http,:hono-adapter-lora,\ :hono-tests - name: "Run integration tests with Mongo DB and Kafka" @@ -54,10 +54,12 @@ jobs: -Dhono.components.type=quarkus-native -Dhono.deviceregistry.type=mongodb \ -Dhono.messaging-infra.type=kafka -Dhono.commandrouting.cache=server \ -Prun-tests,jaeger - - name: "Build JDBC registry image" + - name: "Run integration tests with PostgreSQL DB and Kafka" run: | - mvn install -B -e -DskipTests -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn \ - -Pbuild-docker-image,metrics-prometheus -am -pl :hono-service-device-registry-jdbc + mvn verify -pl :hono-tests -B -e -DCI=$CI \ + -Dhono.components.type=quarkus-native -Dhono.deviceregistry.type=jdbc \ + -Dhono.messaging-infra.type=kafka -Dhono.commandrouting.cache=server \ + -Prun-tests,jaeger - name: "Run integration tests with Sandbox-like configuration" run: | mvn verify -pl :hono-tests -B -e -DCI=$CI \ diff --git a/services/base-jdbc/src/main/resources/META-INF/native-image/org/eclipse/hono/hono-service-base-jdbc/native-image.properties b/services/base-jdbc/src/main/resources/META-INF/native-image/org/eclipse/hono/hono-service-base-jdbc/native-image.properties new file mode 100644 index 0000000000..7ceff5c0cd --- /dev/null +++ b/services/base-jdbc/src/main/resources/META-INF/native-image/org/eclipse/hono/hono-service-base-jdbc/native-image.properties @@ -0,0 +1,12 @@ +# Copyright (c) 2023 Contributors to the Eclipse Foundation +# +# See the NOTICE file(s) distributed with this work for additional +# information regarding copyright ownership. +# +# This program and the accompanying materials are made available under the +# terms of the Eclipse Public License 2.0 which is available at +# http://www.eclipse.org/legal/epl-2.0 +# +# SPDX-License-Identifier: EPL-2.0 + +Args = -H:ResourceConfigurationResources=${.}/resources-config.json diff --git a/services/base-jdbc/src/main/resources/META-INF/native-image/org/eclipse/hono/hono-service-base-jdbc/resources-config.json b/services/base-jdbc/src/main/resources/META-INF/native-image/org/eclipse/hono/hono-service-base-jdbc/resources-config.json new file mode 100644 index 0000000000..edd98131ce --- /dev/null +++ b/services/base-jdbc/src/main/resources/META-INF/native-image/org/eclipse/hono/hono-service-base-jdbc/resources-config.json @@ -0,0 +1,8 @@ +{ + "resources": { + "includes": [ + { "pattern": "org\\/eclipse\\/hono\\/service\\/base\\/jdbc\\/store\\/.*\\.yaml$" }, + { "pattern": "sql\\/.*\\.sql$" } + ] + } +} diff --git a/services/device-registry-jdbc/pom.xml b/services/device-registry-jdbc/pom.xml index 6a8d90a6e5..262dc79581 100644 --- a/services/device-registry-jdbc/pom.xml +++ b/services/device-registry-jdbc/pom.xml @@ -191,14 +191,14 @@ build-native-image - - - jar - + + + + io.fabric8 + docker-maven-plugin + + + diff --git a/tests/pom.xml b/tests/pom.xml index d97a70011e..676c8089f8 100644 --- a/tests/pom.xml +++ b/tests/pom.xml @@ -117,11 +117,13 @@ true + hono-service-device-registry-jdbc 400000000 ${default.java-options} -Dorg.eclipse.hono.service.base.jdbc.store.skipDumpingStatementConfiguration=true + 2000 @@ -636,6 +638,8 @@ 100000000 hono-service-device-registry-mongodb-native 150000000 + hono-service-device-registry-jdbc-native + 150000000 @@ -1425,7 +1429,7 @@ ${hono.deviceregistry.jdbc.disabled} IfNotPresent - ${docker.repository}/hono-service-device-registry-jdbc:${project.version} + ${docker.repository}/${hono.deviceregistry.jdbc.image}:${project.version} dir / @@ -1465,6 +1469,11 @@ ${custom.network.name} ${hono.registration.host} + + + ${hono.deviceregistry.jdbc.native-image-args} + + ${hono.deviceregistry.jdbc.max-mem} ${hono.deviceregistry.jdbc.max-mem}