This is an automated email from the ASF dual-hosted git repository.

zhfeng pushed a commit to branch 3.8.x
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit be45a5b76985db89e229ffcdcdf5981f60599bad
Author: JiriOndrusek <[email protected]>
AuthorDate: Thu Aug 15 11:28:16 2024 +0200

    Changed default location of generated certificates to target/certs + change 
of configuration of ssl
---
 .../component/http/common/CommonProducers.java     |  4 ++--
 .../src/main/resources/application.properties      |  4 ++--
 .../component/http/netty/it/NettyHttpTest.java     |  6 ++++++
 .../test/support/certificate/CertificatesUtil.java | 20 +++++++++++++++++--
 .../component/sftp/it/SftpTestResource.java        |  5 +++--
 .../camel/quarkus/component/grpc/it/GrpcRoute.java |  2 +-
 .../grpc/src/main/resources/application.properties |  2 +-
 .../camel/quarkus/component/grpc/it/GrpcTest.java  |  2 +-
 .../camel/quarkus/kafka/ssl/KafkaSslTest.java      |  2 +-
 .../component/lumberjack/it/LumberjackRoutes.java  |  2 +-
 .../src/main/resources/application.properties      |  2 +-
 .../lumberjack/it/LumberjackClientUtil.java        |  8 ++++++--
 .../quarkus/component/mail/MailTestResource.java   |  3 ++-
 .../quarkus/component/nats/it/NatsRoutes.java      |  4 ++--
 .../component/nats/it/NatsTestResource.java        | 10 +++++-----
 .../quarkus/component/netty/NettyProducers.java    |  4 ++--
 .../src/main/resources/application.properties      |  5 ++---
 .../component/oaipmh/it/MockOaipmhServer.java      |  4 ++--
 .../component/paho/mqtt5/it/PahoMqtt5Resource.java |  5 +++--
 .../paho/mqtt5/it/PahoMqtt5TestResource.java       | 14 +++++++------
 .../camel/quarkus/component/paho/PahoResource.java |  9 ++++++---
 .../component/paho/it/PahoTestResource.java        | 11 ++++++++---
 .../platform/http/proxy/ssl/it/Routes.java         |  4 ++--
 .../src/main/resources/application.properties      | 19 ------------------
 .../PlatformHttpSSLTestResource.java               |  2 +-
 .../src/main/resources/application.properties      |  6 +++---
 .../component/http/server/it/PlatformHttpTest.java |  2 +-
 .../vertx/websocket/it/VertxWebsocketResource.java |  2 +-
 .../src/main/resources/application.properties      |  2 +-
 .../it/VertxWebsocketClientSslProvider.java        | 23 +++++++++++++++-------
 .../vertx/websocket/it/VertxWebsocketSslTest.java  |  2 +-
 .../websocket/it/VertxWebsocketSslTestProfile.java |  4 ++--
 32 files changed, 111 insertions(+), 83 deletions(-)

diff --git 
a/integration-test-groups/http/common/src/main/java/org/apache/camel/quarkus/component/http/common/CommonProducers.java
 
b/integration-test-groups/http/common/src/main/java/org/apache/camel/quarkus/component/http/common/CommonProducers.java
index 479a8c911a..baa2ef7f98 100644
--- 
a/integration-test-groups/http/common/src/main/java/org/apache/camel/quarkus/component/http/common/CommonProducers.java
+++ 
b/integration-test-groups/http/common/src/main/java/org/apache/camel/quarkus/component/http/common/CommonProducers.java
@@ -27,11 +27,11 @@ public class CommonProducers {
     @Named
     public SSLContextParameters sslContextParameters() {
         KeyStoreParameters keystoreParameters = new KeyStoreParameters();
-        keystoreParameters.setResource("/certs/localhost-keystore.p12");
+        
keystoreParameters.setResource("file:target/certs/localhost-keystore.p12");
         keystoreParameters.setPassword("localhost-keystore-password");
 
         KeyStoreParameters truststoreParameters = new KeyStoreParameters();
-        truststoreParameters.setResource("/certs/localhost-truststore.p12");
+        
truststoreParameters.setResource("file:target/certs/localhost-truststore.p12");
         truststoreParameters.setPassword("localhost-keystore-password");
 
         TrustManagersParameters trustManagersParameters = new 
TrustManagersParameters();
diff --git 
a/integration-test-groups/http/common/src/main/resources/application.properties 
b/integration-test-groups/http/common/src/main/resources/application.properties
index e99d3e9f96..1b303b2b23 100644
--- 
a/integration-test-groups/http/common/src/main/resources/application.properties
+++ 
b/integration-test-groups/http/common/src/main/resources/application.properties
@@ -18,7 +18,7 @@
 #
 # Quarkus
 #
-quarkus.native.resources.includes = certs/*,restcountries/*
+quarkus.native.resources.includes = target/certs/*,restcountries/*
 quarkus.native.add-all-charsets = true
 quarkus.camel.native.reflection.serialization-enabled = true
 
@@ -31,7 +31,7 @@ quarkus.security.users.embedded.roles.admin=admin
 quarkus.security.users.embedded.roles.noadmin=user
 
 quarkus.http.insecure-requests=enabled
-quarkus.http.ssl.certificate.key-store-file=certs/localhost-keystore.p12
+quarkus.http.ssl.certificate.key-store-file=target/certs/localhost-keystore.p12
 quarkus.http.ssl.certificate.key-store-password=localhost-keystore-password
 quarkus.resteasy.gzip.enabled=true
 
diff --git 
a/integration-test-groups/http/netty-http/src/test/java/org/apache/camel/quarkus/component/http/netty/it/NettyHttpTest.java
 
b/integration-test-groups/http/netty-http/src/test/java/org/apache/camel/quarkus/component/http/netty/it/NettyHttpTest.java
index 4b708ed845..8d065db01b 100644
--- 
a/integration-test-groups/http/netty-http/src/test/java/org/apache/camel/quarkus/component/http/netty/it/NettyHttpTest.java
+++ 
b/integration-test-groups/http/netty-http/src/test/java/org/apache/camel/quarkus/component/http/netty/it/NettyHttpTest.java
@@ -23,8 +23,11 @@ import io.quarkus.test.junit.QuarkusTest;
 import io.restassured.RestAssured;
 import io.restassured.response.Response;
 import io.restassured.response.ValidatableResponse;
+import me.escoffier.certs.Format;
+import me.escoffier.certs.junit5.Certificate;
 import org.apache.camel.quarkus.component.http.common.AbstractHttpTest;
 import org.apache.camel.quarkus.component.http.common.HttpTestResource;
+import org.apache.camel.quarkus.test.support.certificate.TestCertificates;
 import org.eclipse.microprofile.config.ConfigProvider;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.params.ParameterizedTest;
@@ -34,6 +37,9 @@ import org.junit.jupiter.params.provider.ValueSource;
 import static org.assertj.core.api.Assertions.assertThat;
 import static org.hamcrest.Matchers.is;
 
+@TestCertificates(certificates = {
+        @Certificate(name = HttpTestResource.KEYSTORE_NAME, formats = {
+                Format.PKCS12 }, password = 
HttpTestResource.KEYSTORE_PASSWORD) })
 @QuarkusTest
 @QuarkusTestResource(HttpTestResource.class)
 @QuarkusTestResource(NettyHttpTestResource.class)
diff --git 
a/integration-tests-support/certificate-generator/src/main/java/org/apache/camel/quarkus/test/support/certificate/CertificatesUtil.java
 
b/integration-tests-support/certificate-generator/src/main/java/org/apache/camel/quarkus/test/support/certificate/CertificatesUtil.java
index 0c0bd03e9b..d71a791bb4 100644
--- 
a/integration-tests-support/certificate-generator/src/main/java/org/apache/camel/quarkus/test/support/certificate/CertificatesUtil.java
+++ 
b/integration-tests-support/certificate-generator/src/main/java/org/apache/camel/quarkus/test/support/certificate/CertificatesUtil.java
@@ -17,12 +17,28 @@
 package org.apache.camel.quarkus.test.support.certificate;
 
 public class CertificatesUtil {
-    public static final String DEFAULT_CERTS_BASEDIR = "target/classes/certs";
+    public static final String DEFAULT_CERTS_BASEDIR = "target/certs";
 
     private CertificatesUtil() {
     }
 
     public static String keystoreFile(String name, String extension) {
-        return DEFAULT_CERTS_BASEDIR + "/" + name + "-keystore." + extension;
+        return file(name + "-keystore", extension);
+    }
+
+    public static String caCrt(String name) {
+        return file(name + "-ca", "crt");
+    }
+
+    public static String crt(String name) {
+        return file(name, "crt");
+    }
+
+    public static String key(String name) {
+        return file(name, "key");
+    }
+
+    private static String file(String name, String extension) {
+        return DEFAULT_CERTS_BASEDIR + "/" + name + "." + extension;
     }
 }
diff --git 
a/integration-tests/ftp/src/test/java/org/apache/camel/quarkus/component/sftp/it/SftpTestResource.java
 
b/integration-tests/ftp/src/test/java/org/apache/camel/quarkus/component/sftp/it/SftpTestResource.java
index 67035d47b8..e10a13888b 100644
--- 
a/integration-tests/ftp/src/test/java/org/apache/camel/quarkus/component/sftp/it/SftpTestResource.java
+++ 
b/integration-tests/ftp/src/test/java/org/apache/camel/quarkus/component/sftp/it/SftpTestResource.java
@@ -20,6 +20,7 @@ import java.io.File;
 import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.Paths;
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.Map;
@@ -29,7 +30,7 @@ import 
io.quarkus.test.common.QuarkusTestResourceLifecycleManager;
 import org.apache.camel.quarkus.test.AvailablePortFinder;
 import org.apache.camel.util.CollectionHelper;
 import org.apache.sshd.common.file.virtualfs.VirtualFileSystemFactory;
-import org.apache.sshd.common.keyprovider.ClassLoadableResourceKeyPairProvider;
+import org.apache.sshd.common.keyprovider.FileKeyPairProvider;
 import org.apache.sshd.scp.server.ScpCommandFactory;
 import org.apache.sshd.server.SshServer;
 import org.apache.sshd.sftp.server.SftpSubsystemFactory;
@@ -64,7 +65,7 @@ public class SftpTestResource implements 
QuarkusTestResourceLifecycleManager {
 
             sshServer = SshServer.setUpDefaultServer();
             sshServer.setPort(port);
-            sshServer.setKeyPairProvider(new 
ClassLoadableResourceKeyPairProvider("certs/ftp.key"));
+            sshServer.setKeyPairProvider(new 
FileKeyPairProvider(Paths.get("target/certs/ftp.key")));
             sshServer.setSubsystemFactories(Collections.singletonList(new 
SftpSubsystemFactory()));
             sshServer.setCommandFactory(new ScpCommandFactory());
             sshServer.setPasswordAuthenticator((username, password, session) 
-> true);
diff --git 
a/integration-tests/grpc/src/main/java/org/apache/camel/quarkus/component/grpc/it/GrpcRoute.java
 
b/integration-tests/grpc/src/main/java/org/apache/camel/quarkus/component/grpc/it/GrpcRoute.java
index 234b761109..a430dca77a 100644
--- 
a/integration-tests/grpc/src/main/java/org/apache/camel/quarkus/component/grpc/it/GrpcRoute.java
+++ 
b/integration-tests/grpc/src/main/java/org/apache/camel/quarkus/component/grpc/it/GrpcRoute.java
@@ -45,7 +45,7 @@ public class GrpcRoute extends RouteBuilder {
 
         // Verifies that the serviceAccountResource can be loaded on startup
         from("direct:googleAuthenticationType")
-                
.toF("grpc://localhost:{{camel.grpc.test.async.server.port}}/%s?method=pingAsyncAsync&negotiationType=TLS&keyResource=certs/grpc.key&authenticationType=GOOGLE&serviceAccountResource=keys/app.json&KeyCertChainResource=certs/grpc.pem",
+                
.toF("grpc://localhost:{{camel.grpc.test.async.server.port}}/%s?method=pingAsyncAsync&negotiationType=TLS&keyResource=file:target/certs/grpc.key&authenticationType=GOOGLE&serviceAccountResource=keys/app.json&KeyCertChainResource=target/certs/grpc.pem",
                         PING_PONG_SERVICE);
 
         // Streaming producer strategy
diff --git a/integration-tests/grpc/src/main/resources/application.properties 
b/integration-tests/grpc/src/main/resources/application.properties
index 63661b9b4a..ec91806a1e 100644
--- a/integration-tests/grpc/src/main/resources/application.properties
+++ b/integration-tests/grpc/src/main/resources/application.properties
@@ -15,7 +15,7 @@
 ## limitations under the License.
 ## ---------------------------------------------------------------------------
 
-quarkus.native.resources.includes=certs/*.key,certs/*.pem,keys/*.json
+quarkus.native.resources.includes=keys/*.json
 
 # Test codegen protobuf imports
 
quarkus.camel.grpc.codegen.scan-for-imports=com.google.protobuf:protobuf-java,org.apache.camel.quarkus:camel-quarkus-integration-tests-support-grpc
diff --git 
a/integration-tests/grpc/src/test/java/org/apache/camel/quarkus/component/grpc/it/GrpcTest.java
 
b/integration-tests/grpc/src/test/java/org/apache/camel/quarkus/component/grpc/it/GrpcTest.java
index fd7f1a2fb6..57b06a7d46 100644
--- 
a/integration-tests/grpc/src/test/java/org/apache/camel/quarkus/component/grpc/it/GrpcTest.java
+++ 
b/integration-tests/grpc/src/test/java/org/apache/camel/quarkus/component/grpc/it/GrpcTest.java
@@ -72,7 +72,7 @@ import static org.junit.jupiter.api.Assertions.fail;
 
 @TestCertificates(certificates = {
         @Certificate(name = "grpc", formats = { Format.PEM })
-}, baseDir = "target/certs")
+})
 @QuarkusTest
 @QuarkusTestResource(GrpcServerTestResource.class)
 class GrpcTest {
diff --git 
a/integration-tests/kafka-ssl/src/test/java/org/apache/camel/quarkus/kafka/ssl/KafkaSslTest.java
 
b/integration-tests/kafka-ssl/src/test/java/org/apache/camel/quarkus/kafka/ssl/KafkaSslTest.java
index f97fae8f29..0168f0d3bb 100644
--- 
a/integration-tests/kafka-ssl/src/test/java/org/apache/camel/quarkus/kafka/ssl/KafkaSslTest.java
+++ 
b/integration-tests/kafka-ssl/src/test/java/org/apache/camel/quarkus/kafka/ssl/KafkaSslTest.java
@@ -34,7 +34,7 @@ import static org.hamcrest.Matchers.is;
 @TestCertificates(certificates = {
         @Certificate(name = KafkaSslTestResource.KAFKA_HOSTNAME, formats = {
                 Format.PKCS12 }, password = 
KafkaSslTestResource.KAFKA_KEYSTORE_PASSWORD)
-}, baseDir = KafkaSslTestResource.CERTS_BASEDIR, docker = true)
+}, docker = true)
 @QuarkusTest
 @QuarkusTestResource(KafkaSslTestResource.class)
 public class KafkaSslTest {
diff --git 
a/integration-tests/lumberjack/src/main/java/org/apache/camel/quarkus/component/lumberjack/it/LumberjackRoutes.java
 
b/integration-tests/lumberjack/src/main/java/org/apache/camel/quarkus/component/lumberjack/it/LumberjackRoutes.java
index c75271ac24..60d9a06694 100644
--- 
a/integration-tests/lumberjack/src/main/java/org/apache/camel/quarkus/component/lumberjack/it/LumberjackRoutes.java
+++ 
b/integration-tests/lumberjack/src/main/java/org/apache/camel/quarkus/component/lumberjack/it/LumberjackRoutes.java
@@ -83,7 +83,7 @@ public class LumberjackRoutes extends RouteBuilder {
         KeyManagersParameters keyManagersParameters = new 
KeyManagersParameters();
         KeyStoreParameters keyStore = new KeyStoreParameters();
         keyStore.setPassword("changeit");
-        keyStore.setResource("certs/lumberjack-keystore.jks");
+        keyStore.setResource("file:target/certs/lumberjack-keystore.jks");
         keyManagersParameters.setKeyPassword("changeit");
         keyManagersParameters.setKeyStore(keyStore);
         sslContextParameters.setKeyManagers(keyManagersParameters);
diff --git 
a/integration-tests/lumberjack/src/main/resources/application.properties 
b/integration-tests/lumberjack/src/main/resources/application.properties
index 9e8f5a9263..d4d3daba33 100644
--- a/integration-tests/lumberjack/src/main/resources/application.properties
+++ b/integration-tests/lumberjack/src/main/resources/application.properties
@@ -15,4 +15,4 @@
 ## limitations under the License.
 ## ---------------------------------------------------------------------------
 
-quarkus.native.resources.includes = io/*,certs/*
+quarkus.native.resources.includes = io/*
diff --git 
a/integration-tests/lumberjack/src/test/java/org/apache/camel/quarkus/component/lumberjack/it/LumberjackClientUtil.java
 
b/integration-tests/lumberjack/src/test/java/org/apache/camel/quarkus/component/lumberjack/it/LumberjackClientUtil.java
index c93f48cad4..dd71435fd6 100644
--- 
a/integration-tests/lumberjack/src/test/java/org/apache/camel/quarkus/component/lumberjack/it/LumberjackClientUtil.java
+++ 
b/integration-tests/lumberjack/src/test/java/org/apache/camel/quarkus/component/lumberjack/it/LumberjackClientUtil.java
@@ -17,8 +17,10 @@
 package org.apache.camel.quarkus.component.lumberjack.it;
 
 import java.io.ByteArrayOutputStream;
+import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
+import java.nio.file.Paths;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.concurrent.TimeUnit;
@@ -145,8 +147,10 @@ public class LumberjackClientUtil {
         TrustManagersParameters trustManagersParameters = new 
TrustManagersParameters();
         KeyStoreParameters trustStore = new CustomKeyStoreParameters();
         trustStore.setPassword("changeit");
-        trustStore.setResource("certs/lumberjack-keystore.jks");
+        trustStore.setResource(
+                "target/certs/lumberjack-keystore.jks");
         trustManagersParameters.setKeyStore(trustStore);
+
         sslContextParameters.setTrustManagers(trustManagersParameters);
 
         return sslContextParameters;
@@ -156,7 +160,7 @@ public class LumberjackClientUtil {
 
         @Override
         protected InputStream resolveResource(String resource) throws 
IOException {
-            return 
this.getClass().getClassLoader().getResourceAsStream(resource);
+            return new FileInputStream(Paths.get(resource).toFile());
         }
     }
 }
diff --git 
a/integration-tests/mail/src/test/java/org/apache/camel/quarkus/component/mail/MailTestResource.java
 
b/integration-tests/mail/src/test/java/org/apache/camel/quarkus/component/mail/MailTestResource.java
index d65a80f999..0269f7ab87 100644
--- 
a/integration-tests/mail/src/test/java/org/apache/camel/quarkus/component/mail/MailTestResource.java
+++ 
b/integration-tests/mail/src/test/java/org/apache/camel/quarkus/component/mail/MailTestResource.java
@@ -23,6 +23,7 @@ import java.util.HashMap;
 import java.util.Map;
 
 import io.quarkus.test.common.QuarkusTestResourceLifecycleManager;
+import org.apache.camel.quarkus.test.support.certificate.CertificatesUtil;
 import org.eclipse.microprofile.config.ConfigProvider;
 import org.jboss.logging.Logger;
 import org.testcontainers.containers.GenericContainer;
@@ -41,7 +42,7 @@ public class MailTestResource implements 
QuarkusTestResourceLifecycleManager {
     @Override
     public Map<String, String> start() {
         container = new GenericContainer<>(GREENMAIL_IMAGE_NAME)
-                
.withCopyToContainer(MountableFile.forClasspathResource("certs/greenmail-keystore.p12"),
+                
.withCopyToContainer(MountableFile.forHostPath(CertificatesUtil.keystoreFile("greenmail",
 "p12")),
                         "/home/greenmail/greenmail.p12")
                 .withExposedPorts(MailProtocol.allPorts())
                 .waitingFor(new HttpWaitStrategy()
diff --git 
a/integration-tests/nats/src/main/java/org/apache/camel/quarkus/component/nats/it/NatsRoutes.java
 
b/integration-tests/nats/src/main/java/org/apache/camel/quarkus/component/nats/it/NatsRoutes.java
index 4e4a0fd120..1a9cc3a8ef 100644
--- 
a/integration-tests/nats/src/main/java/org/apache/camel/quarkus/component/nats/it/NatsRoutes.java
+++ 
b/integration-tests/nats/src/main/java/org/apache/camel/quarkus/component/nats/it/NatsRoutes.java
@@ -72,7 +72,7 @@ public class NatsRoutes extends RouteBuilder {
         KeyManagersParameters keyManagersParameters = new 
KeyManagersParameters();
         KeyStoreParameters keyStore = new KeyStoreParameters();
         keyStore.setPassword("password");
-        keyStore.setResource("certs/nats-keystore.p12");
+        keyStore.setResource("file:target/certs/nats-keystore.p12");
         keyManagersParameters.setKeyPassword("password");
         keyManagersParameters.setKeyStore(keyStore);
         sslContextParameters.setKeyManagers(keyManagersParameters);
@@ -80,7 +80,7 @@ public class NatsRoutes extends RouteBuilder {
         TrustManagersParameters trustManagersParameters = new 
TrustManagersParameters();
         KeyStoreParameters trustStore = new KeyStoreParameters();
         trustStore.setPassword("password");
-        trustStore.setResource("certs/nats-truststore.p12");
+        trustStore.setResource("file:target/certs/nats-truststore.p12");
         trustManagersParameters.setKeyStore(trustStore);
         sslContextParameters.setTrustManagers(trustManagersParameters);
 
diff --git 
a/integration-tests/nats/src/test/java/org/apache/camel/quarkus/component/nats/it/NatsTestResource.java
 
b/integration-tests/nats/src/test/java/org/apache/camel/quarkus/component/nats/it/NatsTestResource.java
index 179dfccc31..1ed282c437 100644
--- 
a/integration-tests/nats/src/test/java/org/apache/camel/quarkus/component/nats/it/NatsTestResource.java
+++ 
b/integration-tests/nats/src/test/java/org/apache/camel/quarkus/component/nats/it/NatsTestResource.java
@@ -20,6 +20,7 @@ import java.util.HashMap;
 import java.util.Map;
 
 import io.quarkus.test.common.QuarkusTestResourceLifecycleManager;
+import org.apache.camel.quarkus.test.support.certificate.CertificatesUtil;
 import org.eclipse.microprofile.config.ConfigProvider;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -28,6 +29,7 @@ import org.testcontainers.containers.GenericContainer;
 import org.testcontainers.containers.SelinuxContext;
 import org.testcontainers.containers.output.Slf4jLogConsumer;
 import org.testcontainers.containers.wait.strategy.Wait;
+import org.testcontainers.utility.MountableFile;
 import org.testcontainers.utility.TestcontainersConfiguration;
 
 import static 
org.apache.camel.quarkus.component.nats.it.NatsConfiguration.NATS_BROKER_URL_BASIC_AUTH_CONFIG_KEY;
@@ -134,11 +136,9 @@ public class NatsTestResource implements 
QuarkusTestResourceLifecycleManager {
         GenericContainer<?> container = new GenericContainer<>(NATS_IMAGE)
                 .withExposedPorts(NATS_SERVER_PORT)
                 .withNetworkAliases("tlsAuthContainer")
-                .withClasspathResourceMapping("certs/nats-ca.crt", 
"/certs/nats-ca.crt", BindMode.READ_ONLY,
-                        SelinuxContext.SHARED)
-                .withClasspathResourceMapping("certs/nats.key", 
"/certs/nats.key", BindMode.READ_ONLY, SelinuxContext.SHARED)
-                .withClasspathResourceMapping("certs/nats.crt", 
"/certs/nats.crt", BindMode.READ_ONLY,
-                        SelinuxContext.SHARED)
+                
.withCopyToContainer(MountableFile.forHostPath(CertificatesUtil.caCrt("nats")), 
"/certs/nats-ca.crt")
+                
.withCopyToContainer(MountableFile.forHostPath(CertificatesUtil.key("nats")), 
"/certs/nats.key")
+                
.withCopyToContainer(MountableFile.forHostPath(CertificatesUtil.crt("nats")), 
"/certs/nats.crt")
                 .withClasspathResourceMapping("conf/tls.conf", 
"/conf/tls.conf", BindMode.READ_ONLY, SelinuxContext.SHARED)
                 .withCommand(
                         "--config", "/conf/tls.conf",
diff --git 
a/integration-tests/netty/src/main/java/org/apache/camel/quarkus/component/netty/NettyProducers.java
 
b/integration-tests/netty/src/main/java/org/apache/camel/quarkus/component/netty/NettyProducers.java
index 2e37f92d36..63b8e9b2bd 100644
--- 
a/integration-tests/netty/src/main/java/org/apache/camel/quarkus/component/netty/NettyProducers.java
+++ 
b/integration-tests/netty/src/main/java/org/apache/camel/quarkus/component/netty/NettyProducers.java
@@ -130,11 +130,11 @@ public class NettyProducers {
             @ConfigProperty(name = "keystore.type") Optional<String> 
keystoreType,
             @ConfigProperty(name = "keystore.provider") Optional<String> 
keystoreProvider) {
         KeyStoreParameters keystoreParameters = new KeyStoreParameters();
-        keystoreParameters.setResource("certs/netty-keystore.p12");
+        keystoreParameters.setResource("file:target/certs/netty-keystore.p12");
         keystoreParameters.setPassword("changeit");
 
         KeyStoreParameters truststoreParameters = new KeyStoreParameters();
-        truststoreParameters.setResource("certs/netty-truststore.p12");
+        
truststoreParameters.setResource("file:target/certs/netty-truststore.p12");
         truststoreParameters.setPassword("changeit");
 
         TrustManagersParameters trustManagersParameters = new 
TrustManagersParameters();
diff --git a/integration-tests/netty/src/main/resources/application.properties 
b/integration-tests/netty/src/main/resources/application.properties
index 1e2bcc156b..365ad28f8b 100644
--- a/integration-tests/netty/src/main/resources/application.properties
+++ b/integration-tests/netty/src/main/resources/application.properties
@@ -14,6 +14,5 @@
 ## See the License for the specific language governing permissions and
 ## limitations under the License.
 ## ---------------------------------------------------------------------------
-quarkus.native.resources.includes = certs/*
-truststore.file=/certs/netty-truststore.p12
-keystore.file=/certs/netty-keystore.p12
+truststore.file=target/certs/netty-truststore.p12
+keystore.file=target/certs/netty-keystore.p12
diff --git 
a/integration-tests/oaipmh/src/test/java/org/apache/camel/quarkus/component/oaipmh/it/MockOaipmhServer.java
 
b/integration-tests/oaipmh/src/test/java/org/apache/camel/quarkus/component/oaipmh/it/MockOaipmhServer.java
index 0e3ebaf795..9a36ce884a 100644
--- 
a/integration-tests/oaipmh/src/test/java/org/apache/camel/quarkus/component/oaipmh/it/MockOaipmhServer.java
+++ 
b/integration-tests/oaipmh/src/test/java/org/apache/camel/quarkus/component/oaipmh/it/MockOaipmhServer.java
@@ -33,6 +33,7 @@ import 
com.github.tomakehurst.wiremock.extension.ResponseDefinitionTransformer;
 import com.github.tomakehurst.wiremock.http.Request;
 import com.github.tomakehurst.wiremock.http.ResponseDefinition;
 import org.apache.camel.quarkus.test.AvailablePortFinder;
+import org.apache.camel.quarkus.test.support.certificate.CertificatesUtil;
 import org.apache.commons.codec.digest.DigestUtils;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -91,8 +92,7 @@ public final class MockOaipmhServer {
         WireMockConfiguration config = 
wireMockConfig().extensions(transformer);
 
         config.httpsPort(httpsPort);
-        String keyStorePath = 
MockOaipmhServer.class.getResource("/certs/oaipmh-keystore.p12").toExternalForm();
-        config.keystorePath(keyStorePath);
+        config.keystorePath(CertificatesUtil.keystoreFile("oaipmh", "p12"));
         config.keystorePassword(PASSWORD);
         config.keyManagerPassword(PASSWORD);
 
diff --git 
a/integration-tests/paho-mqtt5/src/main/java/org/apache/camel/quarkus/component/paho/mqtt5/it/PahoMqtt5Resource.java
 
b/integration-tests/paho-mqtt5/src/main/java/org/apache/camel/quarkus/component/paho/mqtt5/it/PahoMqtt5Resource.java
index f6df2cc43b..a19aa8021e 100644
--- 
a/integration-tests/paho-mqtt5/src/main/java/org/apache/camel/quarkus/component/paho/mqtt5/it/PahoMqtt5Resource.java
+++ 
b/integration-tests/paho-mqtt5/src/main/java/org/apache/camel/quarkus/component/paho/mqtt5/it/PahoMqtt5Resource.java
@@ -17,6 +17,7 @@
 package org.apache.camel.quarkus.component.paho.mqtt5.it;
 
 import java.io.File;
+import java.io.FileInputStream;
 import java.io.InputStream;
 import java.net.URI;
 import java.nio.file.Files;
@@ -68,7 +69,7 @@ public class PahoMqtt5Resource {
     @Inject
     ConsumerTemplate consumerTemplate;
 
-    private final String keystore = "certs/paho-mqtt5-keystore.p12";
+    private final String keystore = "target/certs/paho-mqtt5-keystore.p12";
     public final static String KEYSTORE_PASSWORD = "quarkus";
 
     @Path("/{protocol}/{queueName}")
@@ -209,7 +210,7 @@ public class PahoMqtt5Resource {
     private String setKeyStore(String keystore) {
         String tmpKeystore = null;
 
-        try (InputStream in = 
Thread.currentThread().getContextClassLoader().getResourceAsStream(keystore);) {
+        try (InputStream in = new 
FileInputStream(Paths.get(keystore).toFile())) {
             tmpKeystore = File.createTempFile("keystore-", ".jks").getPath();
             Files.copy(in, Paths.get(tmpKeystore), 
StandardCopyOption.REPLACE_EXISTING);
         } catch (Exception e) {
diff --git 
a/integration-tests/paho-mqtt5/src/test/java/org/apache/camel/quarkus/component/paho/mqtt5/it/PahoMqtt5TestResource.java
 
b/integration-tests/paho-mqtt5/src/test/java/org/apache/camel/quarkus/component/paho/mqtt5/it/PahoMqtt5TestResource.java
index 602502c37b..ccf69f919e 100644
--- 
a/integration-tests/paho-mqtt5/src/test/java/org/apache/camel/quarkus/component/paho/mqtt5/it/PahoMqtt5TestResource.java
+++ 
b/integration-tests/paho-mqtt5/src/test/java/org/apache/camel/quarkus/component/paho/mqtt5/it/PahoMqtt5TestResource.java
@@ -22,6 +22,7 @@ import java.util.Map;
 import com.github.dockerjava.api.model.Ulimit;
 import io.quarkus.test.common.QuarkusTestResourceLifecycleManager;
 import org.apache.camel.quarkus.test.AvailablePortFinder;
+import org.apache.camel.quarkus.test.support.certificate.CertificatesUtil;
 import org.apache.camel.util.CollectionHelper;
 import org.eclipse.microprofile.config.ConfigProvider;
 import org.slf4j.Logger;
@@ -31,6 +32,7 @@ import 
org.testcontainers.containers.FixedHostPortGenericContainer;
 import org.testcontainers.containers.GenericContainer;
 import org.testcontainers.containers.output.Slf4jLogConsumer;
 import org.testcontainers.containers.wait.strategy.Wait;
+import org.testcontainers.utility.MountableFile;
 import org.testcontainers.utility.TestcontainersConfiguration;
 
 public class PahoMqtt5TestResource implements 
QuarkusTestResourceLifecycleManager {
@@ -84,12 +86,12 @@ public class PahoMqtt5TestResource implements 
QuarkusTestResourceLifecycleManage
                         .withExposedPorts(TCP_PORT, WS_PORT, SSL_PORT)
                         .withClasspathResourceMapping("mosquitto.conf", 
"/mosquitto/config/mosquitto.conf", BindMode.READ_ONLY)
                         .withClasspathResourceMapping("password.conf", 
"/etc/mosquitto/password", BindMode.READ_ONLY)
-                        
.withClasspathResourceMapping("certs/paho-mqtt5-ca.crt", 
"/etc/mosquitto/certs/paho-mqtt5-ca.crt",
-                                BindMode.READ_ONLY)
-                        .withClasspathResourceMapping("certs/paho-mqtt5.crt", 
"/etc/mosquitto/certs/paho-mqtt5.crt",
-                                BindMode.READ_ONLY)
-                        .withClasspathResourceMapping("certs/paho-mqtt5.key", 
"/etc/mosquitto/certs/paho-mqtt5.key",
-                                BindMode.READ_ONLY);
+                        
.withCopyToContainer(MountableFile.forHostPath(CertificatesUtil.caCrt("paho-mqtt5")),
+                                "/etc/mosquitto/certs/paho-mqtt5-ca.crt")
+                        
.withCopyToContainer(MountableFile.forHostPath(CertificatesUtil.crt("paho-mqtt5")),
+                                "/etc/mosquitto/certs/paho-mqtt5.crt")
+                        
.withCopyToContainer(MountableFile.forHostPath(CertificatesUtil.key("paho-mqtt5")),
+                                "/etc/mosquitto/certs/paho-mqtt5.key");
             }
 
             container.withLogConsumer(new Slf4jLogConsumer(LOGGER))
diff --git 
a/integration-tests/paho/src/main/java/org/apache/camel/quarkus/component/paho/PahoResource.java
 
b/integration-tests/paho/src/main/java/org/apache/camel/quarkus/component/paho/PahoResource.java
index 9c0efbf7f9..0837f1d5a6 100644
--- 
a/integration-tests/paho/src/main/java/org/apache/camel/quarkus/component/paho/PahoResource.java
+++ 
b/integration-tests/paho/src/main/java/org/apache/camel/quarkus/component/paho/PahoResource.java
@@ -16,9 +16,12 @@
  */
 package org.apache.camel.quarkus.component.paho;
 
+import java.io.FileInputStream;
+import java.io.IOException;
 import java.io.InputStream;
 import java.net.URI;
 import java.nio.file.Files;
+import java.nio.file.Paths;
 import java.nio.file.StandardCopyOption;
 
 import javax.net.ssl.HostnameVerifier;
@@ -57,7 +60,7 @@ public class PahoResource {
     @Inject
     ConsumerTemplate consumerTemplate;
 
-    private static final String KEYSTORE_FILE = "certs/paho-keystore.p12";
+    private static final String KEYSTORE_FILE = 
"target/certs/paho-keystore.p12";
     public static final String KEYSTORE_PASSWORD = "quarkus";
 
     @Path("/{protocol}/{queueName}")
@@ -175,11 +178,11 @@ public class PahoResource {
 
     private java.nio.file.Path copyKeyStore() {
         java.nio.file.Path tmpKeystore = null;
-        try (InputStream in = 
Thread.currentThread().getContextClassLoader().getResourceAsStream(KEYSTORE_FILE);)
 {
+        try (InputStream in = new 
FileInputStream(Paths.get(KEYSTORE_FILE).toFile())) {
             tmpKeystore = Files.createTempFile("keystore-", ".p12");
             Files.copy(in, tmpKeystore, StandardCopyOption.REPLACE_EXISTING);
             return tmpKeystore;
-        } catch (Exception e) {
+        } catch (IOException e) {
             throw new RuntimeException("Could not copy " + KEYSTORE_FILE + " 
from the classpath to " + tmpKeystore, e);
         }
     }
diff --git 
a/integration-tests/paho/src/test/java/org/apache/camel/quarkus/component/paho/it/PahoTestResource.java
 
b/integration-tests/paho/src/test/java/org/apache/camel/quarkus/component/paho/it/PahoTestResource.java
index 5019578c08..906cc4916c 100644
--- 
a/integration-tests/paho/src/test/java/org/apache/camel/quarkus/component/paho/it/PahoTestResource.java
+++ 
b/integration-tests/paho/src/test/java/org/apache/camel/quarkus/component/paho/it/PahoTestResource.java
@@ -20,6 +20,7 @@ import java.util.HashMap;
 import java.util.Map;
 
 import io.quarkus.test.common.QuarkusTestResourceLifecycleManager;
+import org.apache.camel.quarkus.test.support.certificate.CertificatesUtil;
 import org.apache.camel.util.CollectionHelper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -27,6 +28,7 @@ import org.testcontainers.containers.BindMode;
 import org.testcontainers.containers.GenericContainer;
 import org.testcontainers.containers.output.Slf4jLogConsumer;
 import org.testcontainers.containers.wait.strategy.Wait;
+import org.testcontainers.utility.MountableFile;
 import org.testcontainers.utility.TestcontainersConfiguration;
 
 public class PahoTestResource implements QuarkusTestResourceLifecycleManager {
@@ -51,9 +53,12 @@ public class PahoTestResource implements 
QuarkusTestResourceLifecycleManager {
             container = new 
GenericContainer<>(IMAGE).withExposedPorts(TCP_PORT, WS_PORT, SSL_PORT)
                     .withClasspathResourceMapping("mosquitto.conf", 
"/mosquitto/config/mosquitto.conf", BindMode.READ_ONLY)
                     .withClasspathResourceMapping("password.conf", 
"/etc/mosquitto/password", BindMode.READ_ONLY)
-                    .withClasspathResourceMapping("certs/paho-ca.crt", 
"/etc/mosquitto/certs/paho-ca.crt", BindMode.READ_ONLY)
-                    .withClasspathResourceMapping("certs/paho.crt", 
"/etc/mosquitto/certs/paho.crt", BindMode.READ_ONLY)
-                    .withClasspathResourceMapping("certs/paho.key", 
"/etc/mosquitto/certs/paho.key", BindMode.READ_ONLY);
+                    
.withCopyToContainer(MountableFile.forHostPath(CertificatesUtil.caCrt("paho")),
+                            "/etc/mosquitto/certs/paho-ca.crt")
+                    
.withCopyToContainer(MountableFile.forHostPath(CertificatesUtil.crt("paho")),
+                            "/etc/mosquitto/certs/paho.crt")
+                    
.withCopyToContainer(MountableFile.forHostPath(CertificatesUtil.key("paho")),
+                            "/etc/mosquitto/certs/paho.key");
             container.withLogConsumer(new Slf4jLogConsumer(LOGGER))
                     .waitingFor(Wait.forLogMessage(".* mosquitto version .* 
running", 1)).waitingFor(Wait.forListeningPort());
 
diff --git 
a/integration-tests/platform-http-proxy-ssl/src/main/java/org/apache/camel/quarkus/component/platform/http/proxy/ssl/it/Routes.java
 
b/integration-tests/platform-http-proxy-ssl/src/main/java/org/apache/camel/quarkus/component/platform/http/proxy/ssl/it/Routes.java
index 1af4f020a7..67984cf1e0 100644
--- 
a/integration-tests/platform-http-proxy-ssl/src/main/java/org/apache/camel/quarkus/component/platform/http/proxy/ssl/it/Routes.java
+++ 
b/integration-tests/platform-http-proxy-ssl/src/main/java/org/apache/camel/quarkus/component/platform/http/proxy/ssl/it/Routes.java
@@ -44,13 +44,13 @@ public class Routes extends RouteBuilder {
         KeyManagersParameters keyManagersParameters = new 
KeyManagersParameters();
         KeyStoreParameters keyStore = new KeyStoreParameters();
         keyStore.setPassword("changeit");
-        keyStore.setResource("certs/proxy-ssl-keystore.p12");
+        keyStore.setResource("file:target/certs/proxy-ssl-keystore.p12");
         keyManagersParameters.setKeyPassword("changeit");
         keyManagersParameters.setKeyStore(keyStore);
         sslContextParameters.setKeyManagers(keyManagersParameters);
 
         KeyStoreParameters truststoreParameters = new KeyStoreParameters();
-        truststoreParameters.setResource("certs/proxy-ssl-keystore.p12");
+        
truststoreParameters.setResource("file:target/certs/proxy-ssl-keystore.p12");
         truststoreParameters.setPassword("changeit");
 
         TrustManagersParameters trustManagersParameters = new 
TrustManagersParameters();
diff --git 
a/integration-tests/platform-http-proxy-ssl/src/main/resources/application.properties
 
b/integration-tests/platform-http-proxy-ssl/src/main/resources/application.properties
deleted file mode 100644
index d71d52239c..0000000000
--- 
a/integration-tests/platform-http-proxy-ssl/src/main/resources/application.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-## ---------------------------------------------------------------------------
-## Licensed to the Apache Software Foundation (ASF) under one or more
-## contributor license agreements.  See the NOTICE file distributed with
-## this work for additional information regarding copyright ownership.
-## The ASF licenses this file to You 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.
-## ---------------------------------------------------------------------------
-
-
-quarkus.native.resources.includes=certs/proxy-ssl-keystore.p12
\ No newline at end of file
diff --git 
a/integration-tests/platform-http-proxy-ssl/src/test/java/org.apache.camel.quarkus.component.platform.http.proxy.ssl.it/PlatformHttpSSLTestResource.java
 
b/integration-tests/platform-http-proxy-ssl/src/test/java/org.apache.camel.quarkus.component.platform.http.proxy.ssl.it/PlatformHttpSSLTestResource.java
index 1430e3e553..831244fbea 100644
--- 
a/integration-tests/platform-http-proxy-ssl/src/test/java/org.apache.camel.quarkus.component.platform.http.proxy.ssl.it/PlatformHttpSSLTestResource.java
+++ 
b/integration-tests/platform-http-proxy-ssl/src/test/java/org.apache.camel.quarkus.component.platform.http.proxy.ssl.it/PlatformHttpSSLTestResource.java
@@ -50,7 +50,7 @@ public class PlatformHttpSSLTestResource extends 
WireMockTestResourceLifecycleMa
         // add an SSL port
         config.dynamicHttpsPort();
         // Either a path to a file or a resource on the classpath
-        config.keystorePath("certs/proxy-ssl-keystore.p12");
+        config.keystorePath("target/certs/proxy-ssl-keystore.p12");
         // The password used to access the keystore. Defaults to "password" if 
omitted
         config.keystorePassword("changeit");
         // The password used to access individual keys in the keystore. 
Defaults to "password" if omitted
diff --git 
a/integration-tests/platform-http/src/main/resources/application.properties 
b/integration-tests/platform-http/src/main/resources/application.properties
index 77e7fdcaa6..3c5b5cc8b9 100644
--- a/integration-tests/platform-http/src/main/resources/application.properties
+++ b/integration-tests/platform-http/src/main/resources/application.properties
@@ -18,8 +18,8 @@
 # Quarkus
 #
 quarkus.http.body.uploads-directory=target/uploads
-quarkus.http.ssl.certificate.files=certs/platform-http.crt
-quarkus.http.ssl.certificate.key-files=certs/platform-http.key
+quarkus.http.ssl.certificate.files=target/certs/platform-http.crt
+quarkus.http.ssl.certificate.key-files=target/certs/platform-http.key
 quarkus.http.insecure-requests=disabled
 quarkus.http.auth.basic=true
 quarkus.http.auth.permission.default.paths=/platform-http/secure/basic
@@ -32,4 +32,4 @@ quarkus.security.users.embedded.roles.camel=Admin
 # Required by the encoding() test
 quarkus.native.add-all-charsets = true
 
-quarkus.native.resources.includes = certs/*.crt,certs/*.key
+quarkus.native.resources.includes = target/certs/*.crt,target/certs/*.key
diff --git 
a/integration-tests/platform-http/src/test/java/org/apache/camel/quarkus/component/http/server/it/PlatformHttpTest.java
 
b/integration-tests/platform-http/src/test/java/org/apache/camel/quarkus/component/http/server/it/PlatformHttpTest.java
index 8e0bc4ce44..b770825606 100644
--- 
a/integration-tests/platform-http/src/test/java/org/apache/camel/quarkus/component/http/server/it/PlatformHttpTest.java
+++ 
b/integration-tests/platform-http/src/test/java/org/apache/camel/quarkus/component/http/server/it/PlatformHttpTest.java
@@ -46,7 +46,7 @@ class PlatformHttpTest {
 
     @BeforeAll
     public static void beforeAll() {
-        RestAssured.trustStore("certs/platform-http-truststore.p12", 
"changeit");
+        RestAssured.trustStore("target/certs/platform-http-truststore.p12", 
"changeit");
     }
 
     @Test
diff --git 
a/integration-tests/vertx-websocket/src/main/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketResource.java
 
b/integration-tests/vertx-websocket/src/main/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketResource.java
index 6ed424a619..3d6c676c12 100644
--- 
a/integration-tests/vertx-websocket/src/main/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketResource.java
+++ 
b/integration-tests/vertx-websocket/src/main/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketResource.java
@@ -141,7 +141,7 @@ public class VertxWebsocketResource {
     @Named
     public SSLContextParameters clientSSLContextParameters() {
         KeyStoreParameters truststoreParameters = new KeyStoreParameters();
-        
truststoreParameters.setResource("/certs/vertx-websocket-truststore.p12");
+        
truststoreParameters.setResource("file:target/certs/vertx-websocket-truststore.p12");
         truststoreParameters.setPassword("changeit");
 
         TrustManagersParameters trustManagersParameters = new 
TrustManagersParameters();
diff --git 
a/integration-tests/vertx-websocket/src/main/resources/application.properties 
b/integration-tests/vertx-websocket/src/main/resources/application.properties
index 98bf8c5422..71f447461c 100644
--- 
a/integration-tests/vertx-websocket/src/main/resources/application.properties
+++ 
b/integration-tests/vertx-websocket/src/main/resources/application.properties
@@ -15,4 +15,4 @@
 ## limitations under the License.
 ## ---------------------------------------------------------------------------
 
-quarkus.native.resources.includes = certs/*.key,certs/*.crt
+quarkus.native.resources.includes = target/certs/*.key,target/certs/*.crt
diff --git 
a/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketClientSslProvider.java
 
b/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketClientSslProvider.java
index cdfc1994e9..e39f924a5f 100644
--- 
a/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketClientSslProvider.java
+++ 
b/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketClientSslProvider.java
@@ -16,8 +16,10 @@
  */
 package org.apache.camel.quarkus.component.vertx.websocket.it;
 
+import java.io.FileInputStream;
 import java.io.InputStream;
 import java.net.URI;
+import java.nio.file.Paths;
 import java.security.KeyStore;
 
 import javax.net.ssl.SSLContext;
@@ -32,11 +34,14 @@ import jakarta.websocket.Endpoint;
  * Enable the Quarkus WebSocket client to handle self-signed certificates.
  */
 public class VertxWebsocketClientSslProvider implements 
WebsocketClientSslProvider {
-    private static final SSLContext SSL_CONTEXT;
 
-    static {
-        try (InputStream stream = VertxWebsocketClientSslProvider.class
-                .getResourceAsStream("/certs/vertx-websocket-truststore.p12")) 
{
+    private static SSLContext SSL_CONTEXT;
+
+    static SSLContext getSslContext() {
+        if (SSL_CONTEXT != null) {
+            return SSL_CONTEXT;
+        }
+        try (InputStream stream = new 
FileInputStream(Paths.get("target/certs/vertx-websocket-truststore.p12").toFile()))
 {
             KeyStore keystore = 
KeyStore.getInstance(KeyStore.getDefaultType());
             keystore.load(stream, "changeit".toCharArray());
 
@@ -46,23 +51,27 @@ public class VertxWebsocketClientSslProvider implements 
WebsocketClientSslProvid
 
             SSL_CONTEXT = SSLContext.getInstance("TLS");
             SSL_CONTEXT.init(null, trustManagerFactory.getTrustManagers(), 
null);
+        } catch (java.io.FileNotFoundException notFound) {
+            //ignore
         } catch (Exception e) {
             throw new RuntimeException(e);
         }
+
+        return SSL_CONTEXT;
     }
 
     @Override
     public SSLContext getSsl(EventLoopGroup worker, Class<?> 
annotatedEndpoint, URI uri) {
-        return SSL_CONTEXT;
+        return getSslContext();
     }
 
     @Override
     public SSLContext getSsl(EventLoopGroup worker, Object 
annotatedEndpointInstance, URI uri) {
-        return SSL_CONTEXT;
+        return getSslContext();
     }
 
     @Override
     public SSLContext getSsl(EventLoopGroup worker, Endpoint endpoint, 
ClientEndpointConfig cec, URI uri) {
-        return SSL_CONTEXT;
+        return getSslContext();
     }
 }
diff --git 
a/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketSslTest.java
 
b/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketSslTest.java
index 2053c2aba7..895702349f 100644
--- 
a/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketSslTest.java
+++ 
b/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketSslTest.java
@@ -42,7 +42,7 @@ public class VertxWebsocketSslTest {
 
     @BeforeAll
     public static void beforeAll() {
-        RestAssured.trustStore("certs/vertx-websocket-truststore.p12", 
"changeit");
+        RestAssured.trustStore("target/certs/vertx-websocket-truststore.p12", 
"changeit");
     }
 
     @Test
diff --git 
a/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketSslTestProfile.java
 
b/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketSslTestProfile.java
index ed7e2dbabc..14664213c3 100644
--- 
a/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketSslTestProfile.java
+++ 
b/integration-tests/vertx-websocket/src/test/java/org/apache/camel/quarkus/component/vertx/websocket/it/VertxWebsocketSslTestProfile.java
@@ -25,8 +25,8 @@ public class VertxWebsocketSslTestProfile implements 
QuarkusTestProfile {
     @Override
     public Map<String, String> getConfigOverrides() {
         return Map.of(
-                "quarkus.http.ssl.certificate.files", 
"certs/vertx-websocket.crt",
-                "quarkus.http.ssl.certificate.key-files", 
"certs/vertx-websocket.key",
+                "quarkus.http.ssl.certificate.files", 
"target/certs/vertx-websocket.crt",
+                "quarkus.http.ssl.certificate.key-files", 
"target/certs/vertx-websocket.key",
                 "quarkus.http.insecure-requests", "disabled");
     }
 }


Reply via email to