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

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


The following commit(s) were added to refs/heads/main by this push:
     new 015860f316 Use certificate-generator for gRPC integration tests
015860f316 is described below

commit 015860f316f0b7ba62dd0e45ea6e0fd4f2aa0dab
Author: James Netherton <jamesnether...@gmail.com>
AuthorDate: Fri Jun 7 14:06:27 2024 +0100

    Use certificate-generator for gRPC integration tests
---
 integration-tests/grpc/README.adoc                 | 38 ----------------------
 integration-tests/grpc/pom.xml                     |  5 +++
 .../camel/quarkus/component/grpc/it/GrpcRoute.java | 12 ++++---
 .../grpc/src/main/resources/certs/ca-openssl.conf  | 18 ----------
 .../grpc/src/main/resources/certs/ca.key           | 27 ---------------
 .../grpc/src/main/resources/certs/ca.pem           | 20 ------------
 .../grpc/src/main/resources/certs/client.key       | 28 ----------------
 .../grpc/src/main/resources/certs/client.pem       | 20 ------------
 .../grpc/src/main/resources/certs/server.key       | 28 ----------------
 .../grpc/src/main/resources/certs/server.pem       | 20 ------------
 .../camel/quarkus/component/grpc/it/GrpcTest.java  | 15 ++++++---
 11 files changed, 22 insertions(+), 209 deletions(-)

diff --git a/integration-tests/grpc/README.adoc 
b/integration-tests/grpc/README.adoc
deleted file mode 100644
index aed6f155b0..0000000000
--- a/integration-tests/grpc/README.adoc
+++ /dev/null
@@ -1,38 +0,0 @@
-# gRPC test client & server certificate generation
-
-The certificates used by the client / server for the security integration 
tests can be generated from within the src/main/resources/certs directory as 
follows.
-
-Create the certificate authority.
-
-[source,shell]
-----
-openssl genrsa -out ca.key 2048
-openssl req -x509 -new -key ca.key -nodes -out ca.pem -days 3650 -config 
ca-openssl.conf -extensions v3_req
-----
-
-Create the client certificate. When prompted for the 'common name' use 
localhost as the value. It's safe to accept the defaults for the other options.
-
-[source,shell]
-----
-openssl genrsa -out client.key.rsa 2048
-openssl pkcs8 -topk8 -in client.key.rsa -out client.key -nocrypt
-openssl req -new -key client.key -out client.csr
-openssl x509 -req -in client.csr -CA ca.pem -CAkey ca.key -CAcreateserial -out 
client.pem -outform PEM -days 5000
-----
-
-Create the server certificate. When prompted for the 'common name' use 
localhost as the value. It's safe to accept the defaults for the other options.
-
-[source,shell]
-----
-openssl genrsa -out server.key.rsa 2048
-openssl pkcs8 -topk8 -in server.key.rsa -out server.key -nocrypt
-openssl req -new -key server.key -out server.csr
-openssl x509 -req -in server.csr -CA ca.pem -CAkey ca.key -CAcreateserial -out 
server.pem -outform PEM -days 5000
-----
-
-Clean up.
-
-[source,shell]
-----
-rm -f *.rsa *.csr *.srl
-----
diff --git a/integration-tests/grpc/pom.xml b/integration-tests/grpc/pom.xml
index b787c20b2f..de493d19df 100644
--- a/integration-tests/grpc/pom.xml
+++ b/integration-tests/grpc/pom.xml
@@ -59,6 +59,11 @@
             <groupId>org.apache.camel.quarkus</groupId>
             
<artifactId>camel-quarkus-integration-tests-support-grpc</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
+            
<artifactId>camel-quarkus-integration-tests-support-certificate-generator</artifactId>
+            <scope>test</scope>
+        </dependency>
 
         <!-- test dependencies -->
         <dependency>
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 179654c9f7..234b761109 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/server.key&authenticationType=GOOGLE&serviceAccountResource=keys/app.json&KeyCertChainResource=certs/server.pem",
+                
.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",
                         PING_PONG_SERVICE);
 
         // Streaming producer strategy
@@ -111,8 +111,9 @@ public class GrpcRoute extends RouteBuilder {
         // TLS secured consumer
         fromF("grpc://localhost:{{camel.grpc.test.tls.server.port}}"
                 + "/%s?consumerStrategy=PROPAGATION&"
-                + "negotiationType=TLS&keyCertChainResource=certs/server.pem&"
-                + 
"keyResource=certs/server.key&trustCertCollectionResource=certs/ca.pem", 
PING_PONG_SERVICE)
+                + 
"negotiationType=TLS&keyCertChainResource=file:target/certs/grpc.crt&"
+                + 
"keyResource=file:target/certs/grpc.key&trustCertCollectionResource=file:target/certs/grpc-ca.crt",
+                PING_PONG_SERVICE)
                 .process("messageOriginProcessor")
                 .choice()
                 .when(simple("${header.origin} == 'producer'"))
@@ -126,8 +127,9 @@ public class GrpcRoute extends RouteBuilder {
         from("direct:sendTls")
                 .toF("grpc://localhost:{{camel.grpc.test.tls.server.port}}"
                         + "/%s?method=pingSyncSync&synchronous=true&"
-                        + 
"negotiationType=TLS&keyCertChainResource=certs/client.pem&"
-                        + 
"keyResource=certs/client.key&trustCertCollectionResource=certs/ca.pem", 
PING_PONG_SERVICE);
+                        + 
"negotiationType=TLS&keyCertChainResource=file:target/certs/grpc.crt&"
+                        + 
"keyResource=file:target/certs/grpc.key&trustCertCollectionResource=file:target/certs/grpc-ca.crt",
+                        PING_PONG_SERVICE);
 
         // JWT secured consumer
         fromF("grpc://localhost:{{camel.grpc.test.jwt.server.port}}"
diff --git a/integration-tests/grpc/src/main/resources/certs/ca-openssl.conf 
b/integration-tests/grpc/src/main/resources/certs/ca-openssl.conf
deleted file mode 100644
index c8622b8dfd..0000000000
--- a/integration-tests/grpc/src/main/resources/certs/ca-openssl.conf
+++ /dev/null
@@ -1,18 +0,0 @@
-[req]
-distinguished_name  = req_distinguished_name
-req_extensions = v3_req
-
-[req_distinguished_name]
-countryName           = Country Name (2 letter code)
-countryName_default = US
-stateOrProvinceName   = State or Province Name (full name)
-stateOrProvinceName_default = Test State
-organizationName          = Organization Name (eg, company)
-organizationName_default = Apache Camel Quarkus
-commonName            = Common Name (eg, YOUR name)
-commonName_default = localhost
-
-[v3_req]
-basicConstraints = CA:true
-keyUsage = critical, keyCertSign
-
diff --git a/integration-tests/grpc/src/main/resources/certs/ca.key 
b/integration-tests/grpc/src/main/resources/certs/ca.key
deleted file mode 100644
index 785a1b0386..0000000000
--- a/integration-tests/grpc/src/main/resources/certs/ca.key
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN RSA PRIVATE KEY-----
-MIIEowIBAAKCAQEAya7tcM/2bJDin4fROIzX77T3NzNWDk9A8Y7F3OxKqdB15/aB
-Z8FshmVR7pcVW6IbVX7l069RVbsnfIic1HHqB5t/c5B6ACwD3X3fyL5VhlTCTRGX
-QPElVNBnu/8hMP1DXXQfrh6k8pZ5mpOSLRKZfkwxVfQR6tIX5uwAafnOXjVuViIv
-mf0EKWggI/xtFHId3okNg/tEQCfeqAviGl5PZO6MQWlsGeyjT7n4WJfOXyyWu2cP
-ssaJifUUvtiCIQ/diUW5GN6qAKK1CnfAd/Ad5gtPpQtpVqheKLGY+ZRIoDe4MmL0
-J/fkukVadUooTfxdJU1u38mYlUE5/6DUYpsqPwIDAQABAoIBACy63jBh/y5O5+Qn
-1DAtlIq2YQneGdzsmOO6HYoE4f5NnIjItCSV0oLwH77BxVvgVR2eGkzbmjdgXb6R
-8e5wIU50n0y7I0O8f1L1Ytd71y4GyF0dZKVjljr8SbV5PRxHX1Rvt8L/Suf+lZPB
-3O6gLGjFbz+39O1WkTSG7QSUAcAExtxovMloc/qC/Jp0M/ZTonasmbC5WkvHGgCK
-UKgFTYLJUmGDfj5Bk0i+ZI4gPElbGrEvMmw1l9BP3HLS1FFZiVC81m57S7RDaQQe
-w34PHQT5g9tVInjuHSUR/Y0zTyRMcara3e1aF8HBBLAVf+ViMLFH4mjmFbuAxgwE
-Yz9JINECgYEA45F/ZPFfj+nbE8nNnumMO9U5cLydK9LU7BCQjx3m0ygAXJIO3H2j
-FlRg09DRE2F5HBiXuE6mFzTjzFRwoSH4Iqy0V4ifUiiqIAoImneY0QxjEBYf8Mgl
-O+PM4WHfTU5hAbnUHDU0fN0MQz52S/f2h12uIs8AA5Mim60yURhduckCgYEA4uGH
-GeC5ihsuctmmKLR1vzFudp/BhL4bNRp6psOCFCnJ1K7qaGi8/f8kAAKcVFoFD16r
-Ivx+W133tqipYLzoKf4eCGcOZPAHJI2agAFREF3muS0m70hQwqWRIlbuF/J5NTBR
-rboV3cQX/RxDrw5R9KV/EkhCMzZik3VrnqXxR8cCgYB2+iL4y5mCzGlVtzRh2QkQ
-XzJg1rv1pYzcvuxVZvS/gTJvM43BiY4ypnrZQ1uMHnILVnA8VCJSD7zpn1wjYncw
-6cp/2VYyxj/r8FL/L3geE7PXPToF0R5maXs8esccy9W76UQUW1zNy2QV5BpFLace
-rsPUPxVqyQpXCf48l9iowQKBgQDNrxQh+795WwcTDAo9IM0WliPE2zQ/uXFFBUpo
-YRpOWUwmyqSsHzgnNOVYNQWw2yN3OaYAw9Nx1ZC7QdC8aMY5O63ShEtiatCu7MlC
-fu8U3WxMOIjxqSe+LweSkCiuAR6tf66sxuUH9byhtLwPufXGyzqWQnfxob5gXLVC
-UMKbBQKBgEjiPBAhclkub+OJwYZ8+079Z3aQ31ZfVnIffNS/3y2FJvBM2Y0CmtNA
-9YTuSyHO1mchcUG1bbmsc6ylvbMJ0PcoDAswQ6fURbmjvBNRcs5D9mW1ThrR2yV+
-Sg+1KqT3SM27nj1aQs0YsN7JoZT6FcAHQvzfB6KK7+lGxkwMBkGi
------END RSA PRIVATE KEY-----
diff --git a/integration-tests/grpc/src/main/resources/certs/ca.pem 
b/integration-tests/grpc/src/main/resources/certs/ca.pem
deleted file mode 100644
index 15efcf301f..0000000000
--- a/integration-tests/grpc/src/main/resources/certs/ca.pem
+++ /dev/null
@@ -1,20 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIDWjCCAkKgAwIBAgIUI3OU/rpsBhWj1cwW9kVAc1YnTuQwDQYJKoZIhvcNAQEL
-BQAwVjELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM
-GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEPMA0GA1UEAwwGdGVzdGNhMB4XDTIw
-MDYwOTExNTQ0MloXDTMwMDYwNzExNTQ0MlowVjELMAkGA1UEBhMCQVUxEzARBgNV
-BAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0
-ZDEPMA0GA1UEAwwGdGVzdGNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
-AQEAya7tcM/2bJDin4fROIzX77T3NzNWDk9A8Y7F3OxKqdB15/aBZ8FshmVR7pcV
-W6IbVX7l069RVbsnfIic1HHqB5t/c5B6ACwD3X3fyL5VhlTCTRGXQPElVNBnu/8h
-MP1DXXQfrh6k8pZ5mpOSLRKZfkwxVfQR6tIX5uwAafnOXjVuViIvmf0EKWggI/xt
-FHId3okNg/tEQCfeqAviGl5PZO6MQWlsGeyjT7n4WJfOXyyWu2cPssaJifUUvtiC
-IQ/diUW5GN6qAKK1CnfAd/Ad5gtPpQtpVqheKLGY+ZRIoDe4MmL0J/fkukVadUoo
-TfxdJU1u38mYlUE5/6DUYpsqPwIDAQABoyAwHjAMBgNVHRMEBTADAQH/MA4GA1Ud
-DwEB/wQEAwICBDANBgkqhkiG9w0BAQsFAAOCAQEAF71GOXN1C7bd7kQdnLC87uQ+
-cF9REcrGb9kCF8YTRNDXTAIWAYRE4b8gGEPstOjOC/Kr4q4R0NqzYoXvWCnxUfV0
-ZyD+wlZTPNzkFRyJlIYFqwYJIoUvB/Qs/nbPINd4W4YSzeTdHuP98FR8nfEITQ36
-TZq2zTSwZSb0i14LRxe7uZjvZlK0rqiH2ELj3hSa40aq3g6b6cmZfZzILIATIg79
-iF47/kmPudi9/CvkU6GZ89suKkBDwOmqULLVqPL607M3UFTQs5qmyv9Ybr0pd6M2
-vs2KaYSobjToBwSDZ6dImp3+fQnjbNTi6VR+tfVEifGvVcq925Be6Z1u8KE8qg==
------END CERTIFICATE-----
diff --git a/integration-tests/grpc/src/main/resources/certs/client.key 
b/integration-tests/grpc/src/main/resources/certs/client.key
deleted file mode 100644
index 860491e01c..0000000000
--- a/integration-tests/grpc/src/main/resources/certs/client.key
+++ /dev/null
@@ -1,28 +0,0 @@
------BEGIN PRIVATE KEY-----
-MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDOt2D2q5xddLk9
-h7pFk2qcg2ySFgqzI3oGbWwncWoGY3LizXAwPJr96ZhWwoVDvhwWONoSs53eWTCr
-gLn12teacgk0ZuTuEzaThAePcLfnpT9QQiYXjyjpApJGnYOy48n3hJeYKknZqQuu
-EI/Z5+bIQKNd8XPznWGDCuuxmdtNsdneXbLrOInIu67gEVQnORGw2k5wwKA7lgYI
-1+848FxDTlTU31kWLDE3VZJIHAGbv8UaLP+/49cgJ2G5QHF28Gm9Jd08AZkXGEp4
-wMx7FvRjgeq6Hb3kZ6hKQUbVUejQBXRy3+Gqb3fFQsfEYKItrHPNKFddmzdof1IN
-i3pzjzwfAgMBAAECggEAUZrzHG4C/KHnvvKmBnF71O3NHp60+qM2uPLZj3imcn8w
-C3kuoNxME5D0IswH8AZM8DjhXiCqYeyz2gCnaPdLxhzepWE5XwMWuIWWtnm5ICmM
-JRL4FrTdYZ8yP85O/4ANazlc3yVSoiqqAb1oDI4P/V4HID8Bl1q59BGLmkEy4ihu
-RD4oHP5Vq1QVeAaYSdG4jLDvsLXO3ikQMCo4dTZfbfOzWFnjLQRwDwQoYmn2YSWn
-3Wt7sNbbCJd1OGnAVcdrZRrdM/672e2AbzenLWIKD8rlq5AMYri47j6UbbQjsMi4
-7xDiiSuj6nc5xkcqgc2wHO5jWLvwHA/0uFv9qFgWAQKBgQDpO2ly7wHtOgGmclVW
-Fh3/X1MzrE2xeSMyxqHzdJIQUlVP7kN7GCHN/7huwCVEaAOGuT8gW6R1zA/6Xz22
-G2g6hXQZM3DSMMntZRQeBrVU3CRMAQWx5K7Kp46bBNjbV3TVdUVk2vZlaK3z7iWt
-/z1N0xNvkFOJbxyGgZpArWPw7wKBgQDi5VMeT73J5i4ScPCNBhUwuzCy5QIOYkVn
-gtwhxNrYzSlzmqTG98p0waAS17uZeHwJJ0Sy8M8D7Sj/p5i7C6m8eLN8Apbz7zzY
-mOXt4+d8hbvD3SJCRkgHNEasAmqhxB44Kk9t1D2SsnAOR+Sprug+GC1Inzdxk222
-F2nN6q8H0QKBgQC1eDSj6LNnESsXhv4+7RaKDHGAUyBgZhCtAUAhXSII8QbQGmMG
-88/ZqI6oHXjhsMyNlrU3SBa+UPhdpp0thEWkwxGCSjQOV0fGHk94zV9pl5/mQyVb
-NMOLirO6ihrxDysoqwZDYts0LC6tDS7kIyRf2UvWEkXtOTbIsS6EBGUuoQKBgQC4
-iJR6QZZ0v11XKD2sJHdVg9jOlkx+0FPsJNTOLiFjVDDTUcGUBPHG1bdPu99aqVAP
-zb0k348ufVLr4i3oakro+y3WvPBygm91JZ1TRhj+AHI+kPoM9sYb/dtAiFKbMDr3
-qQmipIxTZAaYxsXlb1h5MAacWsmn+KSxBQfLLoSeEQKBgQDhR3O7P5LED/07lP4X
-eLAQR5TU+AjZBy74cKpvOQvo4VkhDQcLgf15yZOQEMqOTvuy46b1x6KNSRg4VlZH
-cBBLH/NlivWLnsM7Te9j2Rg0ZTGUPtoCU5q3dDw6AYG2TtEkDis2LvYc05khuGuS
-CdmyEemWogUiW2EYmFwJqV47Cg==
------END PRIVATE KEY-----
diff --git a/integration-tests/grpc/src/main/resources/certs/client.pem 
b/integration-tests/grpc/src/main/resources/certs/client.pem
deleted file mode 100644
index f92b3b59ee..0000000000
--- a/integration-tests/grpc/src/main/resources/certs/client.pem
+++ /dev/null
@@ -1,20 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIDMzCCAhsCFFJOv4SHojw+aduKtxbjvmuqhXbsMA0GCSqGSIb3DQEBCwUAMFYx
-CzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRl
-cm5ldCBXaWRnaXRzIFB0eSBMdGQxDzANBgNVBAMMBnRlc3RjYTAeFw0yMDA2MDkx
-MTU1MzNaFw0zNDAyMTYxMTU1MzNaMFYxCzAJBgNVBAYTAlhYMRUwEwYDVQQHDAxE
-ZWZhdWx0IENpdHkxHDAaBgNVBAoME0RlZmF1bHQgQ29tcGFueSBMdGQxEjAQBgNV
-BAMMCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM63
-YParnF10uT2HukWTapyDbJIWCrMjegZtbCdxagZjcuLNcDA8mv3pmFbChUO+HBY4
-2hKznd5ZMKuAufXa15pyCTRm5O4TNpOEB49wt+elP1BCJhePKOkCkkadg7LjyfeE
-l5gqSdmpC64Qj9nn5shAo13xc/OdYYMK67GZ202x2d5dsus4ici7ruARVCc5EbDa
-TnDAoDuWBgjX7zjwXENOVNTfWRYsMTdVkkgcAZu/xRos/7/j1yAnYblAcXbwab0l
-3TwBmRcYSnjAzHsW9GOB6rodveRnqEpBRtVR6NAFdHLf4apvd8VCx8Rgoi2sc80o
-V12bN2h/Ug2LenOPPB8CAwEAATANBgkqhkiG9w0BAQsFAAOCAQEASorfZ3g4jLJY
-jYaGh2Lyg1dDiOGnCBgkJzO/lJ4t2qrXwf0OX3GepTHedO1Y4C00ca/XKGB8Qluh
-ylhJYrfG1O+fwm+CYHrg+sz2yRtnlHAdySCqa3DkD5RHy9CNIe7s2RGNpcz0gvrr
-byrqGB6u8AATvzVxO+Hx36Mttx89e1pcKoNmAJHAjueceJKmNgBFi+qZqEITrLeQ
-Q6sj4YzYEe9eVtTDqiZS2Tl5D/l/3YwRiWWyB3AxOINVnRMHdKM5qrUuVtX0hhIb
-YjMuUo/vOaimX9kqhphvDzE34hJCn2DQpEJUESUVBiXg8N6gUYjOH46Q8krAj48P
-yDTqHnU4yw==
------END CERTIFICATE-----
diff --git a/integration-tests/grpc/src/main/resources/certs/server.key 
b/integration-tests/grpc/src/main/resources/certs/server.key
deleted file mode 100644
index 9f1c04abfe..0000000000
--- a/integration-tests/grpc/src/main/resources/certs/server.key
+++ /dev/null
@@ -1,28 +0,0 @@
------BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCUrRCRuN5YYTVG
-XfYEb3JpSsi4ToEERMPsmfRxlljv0L8w6XbvWOk45kCLdk362SUNARdWv+mzgkuJ
-W9eIYxSUQSspkNcnpyhV6078i7ZPY7BERlNny5SZ1eg0ptEoB4Xuw6o1Hko5sjco
-xGGrxYPWaMmz0kLg6EmHgqsiCozXO1p/TpeltLUd0XFp/qE+NsxcjiuPosr0xioY
-F6QLrTeK7b+bR0VbyWQ0RVTZDta+mN9rfLmyN832h5zDaF6VMsHUdpj7ik6ehBhs
-DoLNMOR/zk1q34dx/AwQsrcBhlVFs/8NU3/QnYCgmGsZpld6+o6xZGpLqcxRTHM2
-aeKtwosdAgMBAAECggEAB8iTsH1ULp5QMrHimlLXU4nVvkhl2rpa430f3f54A34T
-NFVUo60s8IylXmfAJ1zM4sRm22TKsFom6DcFrp85SZWr085AZVQL+YuLJA+QaNGY
-PcrMvQdcbT1UncUJ+CWErn5R39wJGMIqvxig4GRDxarQvHhKhgnDJ7QAj5Sr0Oy3
-H57uTq718CitiF9BjSrRgLyg4ycmg+Li7hY+wyCJiLnyDdL7jdlGE5KGsTenrqEe
-/NvhgLqNic5WAyfH6NNCfkN7mCMps9BkMjHS4WGNLj/MEdas8h1sWmSJUtBLNbIL
-/S+5eUzClUI7KECm3s123dgWAdCXaEkQSZaKpRjyhQKBgQDEkCpGDZAcqMR7rJBz
-LikBb5ppc79a33ees69VwKcfvbgrCfbVnDz8fMhC0w4ZOXd7tICZX3wGdzymHVs5
-qlBrD96wvWjbNusH11jsT5mHtEsOpzZ1CYCYt+HVkvN54RFRxJ2FjdeQJywnCWc+
-iy1yeEOma0T2wccjxN63zxDq5wKBgQDBofy0QzZhwaIPs6v3Q7vRE73XKpWj7+U0
-GJY0X9GXEratusv4AXH/V/Aa6+/PexJ+zRSSlgfwqEPjgsZBmT52lshEfmQq4bvV
-hIRDNM+BOKyhzdOxRs3KD9oUSty5ElE43ntuW61APC3Id4a3rlcFcWPtvgbg/Fjf
-UzBFPEo9WwKBgQCSipQpk9T7uMp7FWS/qgtCGcz5jyR7ABzzASzXdoBiBpP16kDO
-ceN5rSGzyBs7rP8qB6DUNz6Ep4JcqYgoTpQTrUotY5h3zdKdDuwpiRKB/GT0sK7F
-xGbN9FD2Y88G70d1OWridaPewYWGONly5FnmfEibGl/YwxDO1ufgCwymwwKBgEW+
-B5wR3WOGb83CBD1ySxK6TpVSREWg4WhLNsa0gHQujFe0wUSZmKrEzLmVo3GSvY2o
-ZjGKEmAO6yzl7GyyOnpSQt3QvFlpptL4AP+H5PmBJUS+MvJWM0cFQKIweKG8RD78
-e267XIKXalIbIw3DoJpYRgrad/XPTl9ZwjgdyAujAoGAN+qEIOXVvq7Lnx050tZB
-TBDponVg5eVGfdduSx5nHUZhVIPH5oz5r+srFURgGutk8CTvfa2Tz8nS/uux5Df0
-Dp04OEDbuOS1BWerMKfOgZa1VMLnCbupAEjr9i+Oc8gmPlxLvypOoTQcZz6qXSo3
-Dp2ABZftNsNA5q1z4f/JW1M=
------END PRIVATE KEY-----
diff --git a/integration-tests/grpc/src/main/resources/certs/server.pem 
b/integration-tests/grpc/src/main/resources/certs/server.pem
deleted file mode 100644
index c1a1c07d19..0000000000
--- a/integration-tests/grpc/src/main/resources/certs/server.pem
+++ /dev/null
@@ -1,20 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIDMzCCAhsCFFJOv4SHojw+aduKtxbjvmuqhXbtMA0GCSqGSIb3DQEBCwUAMFYx
-CzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRl
-cm5ldCBXaWRnaXRzIFB0eSBMdGQxDzANBgNVBAMMBnRlc3RjYTAeFw0yMDA2MDkx
-MTU2MDlaFw0zNDAyMTYxMTU2MDlaMFYxCzAJBgNVBAYTAlhYMRUwEwYDVQQHDAxE
-ZWZhdWx0IENpdHkxHDAaBgNVBAoME0RlZmF1bHQgQ29tcGFueSBMdGQxEjAQBgNV
-BAMMCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJSt
-EJG43lhhNUZd9gRvcmlKyLhOgQREw+yZ9HGWWO/QvzDpdu9Y6TjmQIt2TfrZJQ0B
-F1a/6bOCS4lb14hjFJRBKymQ1yenKFXrTvyLtk9jsERGU2fLlJnV6DSm0SgHhe7D
-qjUeSjmyNyjEYavFg9ZoybPSQuDoSYeCqyIKjNc7Wn9Ol6W0tR3RcWn+oT42zFyO
-K4+iyvTGKhgXpAutN4rtv5tHRVvJZDRFVNkO1r6Y32t8ubI3zfaHnMNoXpUywdR2
-mPuKTp6EGGwOgs0w5H/OTWrfh3H8DBCytwGGVUWz/w1Tf9CdgKCYaxmmV3r6jrFk
-akupzFFMczZp4q3Cix0CAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAd4YnMK+556fT
-hRXtAtCU48tWkWkSEg4jV4fmp9vlm+Lo+Qa8A6X2S1wGpZrMtJVHdbbw4oLVq9NC
-AcFiVBXajMGFn181UnWqUTZCfzBNlYfJiZ0JF0ITzZEdoLv6nZlY9aQRCunEvx0J
-Bp9NVD8sErlr/7oJ2ni+uRrjmAvSnvhMimh+0jt3Chpb0Hy3/YDBLA0nbUW4aI/T
-6gPFuK+VTVtMyOt05a4ZbV/EsJIRjudiK3CcDsrmtsfPWPHDIQ7ZzJLzQgqC8HMp
-h1+gZKv35lCTHZsyZubHS7CEr2I0pIEZcDh9eTVRaiFOuPNxXsDxm5bZnDRllxvF
-m/4+pqqpfQ==
------END CERTIFICATE-----
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 fdae550b34..fd7f1a2fb6 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
@@ -16,6 +16,7 @@
  */
 package org.apache.camel.quarkus.component.grpc.it;
 
+import java.io.FileInputStream;
 import java.util.Iterator;
 import java.util.List;
 import java.util.concurrent.CountDownLatch;
@@ -32,6 +33,8 @@ import io.quarkus.test.common.QuarkusTestResource;
 import io.quarkus.test.junit.QuarkusTest;
 import io.restassured.RestAssured;
 import io.restassured.path.json.JsonPath;
+import me.escoffier.certs.Format;
+import me.escoffier.certs.junit5.Certificate;
 import org.apache.camel.component.grpc.auth.jwt.JwtAlgorithm;
 import org.apache.camel.component.grpc.auth.jwt.JwtCallCredentials;
 import org.apache.camel.component.grpc.auth.jwt.JwtHelper;
@@ -40,6 +43,7 @@ import 
org.apache.camel.quarkus.component.grpc.it.model.PingPongGrpc.PingPongBlo
 import 
org.apache.camel.quarkus.component.grpc.it.model.PingPongGrpc.PingPongStub;
 import org.apache.camel.quarkus.component.grpc.it.model.PingRequest;
 import org.apache.camel.quarkus.component.grpc.it.model.PongResponse;
+import org.apache.camel.quarkus.test.support.certificate.TestCertificates;
 import org.apache.camel.util.StringHelper;
 import org.awaitility.Awaitility;
 import org.eclipse.microprofile.config.Config;
@@ -66,6 +70,9 @@ import static org.junit.jupiter.api.Assertions.assertThrows;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 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 {
@@ -256,15 +263,13 @@ class GrpcTest {
         Config config = ConfigProvider.getConfig();
         Integer port = config.getValue("camel.grpc.test.tls.server.port", 
Integer.class);
 
-        ClassLoader classLoader = 
Thread.currentThread().getContextClassLoader();
-
         ManagedChannel channel = null;
         try {
             channel = NettyChannelBuilder.forAddress("localhost", port)
                     .sslContext(GrpcSslContexts.forClient()
-                            
.keyManager(classLoader.getResourceAsStream("certs/client.pem"),
-                                    
classLoader.getResourceAsStream("certs/client.key"))
-                            
.trustManager(classLoader.getResourceAsStream("certs/ca.pem"))
+                            .keyManager(new 
FileInputStream("target/certs/grpc.crt"),
+                                    new 
FileInputStream("target/certs/grpc.key"))
+                            .trustManager(new 
FileInputStream("target/certs/grpc-ca.crt"))
                             .build())
                     .build();
 

Reply via email to