54 lines
3.6 KiB
Plaintext
54 lines
3.6 KiB
Plaintext
= Integration Tests
|
|
|
|
|
|
== Troubleshooting
|
|
|
|
=== SamplePulsarApplicationSslTests suddenly start failing
|
|
|
|
==== Symptom
|
|
The `SamplePulsarApplicationSslTests` start failing (seemingly out of nowhere) w/ exceptions similar to the following:
|
|
|
|
[source,shell]
|
|
----
|
|
2024-05-01T10:17:11.7454406Z SamplePulsarApplicationSslTests > JksBasedSslTests > initializationError FAILED
|
|
2024-05-01T10:17:11.7455000Z org.testcontainers.containers.ContainerLaunchException: Container startup failed for image apachepulsar/pulsar:latest
|
|
2024-05-01T10:17:11.7455420Z at app//org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:359)
|
|
2024-05-01T10:17:11.7455977Z at app//org.testcontainers.containers.GenericContainer.start(GenericContainer.java:330)
|
|
2024-05-01T10:17:11.7456911Z at app//org.testcontainers.junit.jupiter.TestcontainersExtension$StoreAdapter.start(TestcontainersExtension.java:280)
|
|
2024-05-01T10:17:11.7458124Z at app//org.testcontainers.junit.jupiter.TestcontainersExtension$StoreAdapter.access$200(TestcontainersExtension.java:267)
|
|
2024-05-01T10:17:11.7459241Z at app//org.testcontainers.junit.jupiter.TestcontainersExtension.lambda$null$4(TestcontainersExtension.java:82)
|
|
2024-05-01T10:17:11.7459952Z at app//org.testcontainers.junit.jupiter.TestcontainersExtension.lambda$startContainers$5(TestcontainersExtension.java:82)
|
|
2024-05-01T10:17:11.7460260Z at java.base@17.0.10/java.util.ArrayList.forEach(ArrayList.java:1511)
|
|
2024-05-01T10:17:11.7460931Z at app//org.testcontainers.junit.jupiter.TestcontainersExtension.startContainers(TestcontainersExtension.java:82)
|
|
2024-05-01T10:17:11.7461820Z at app//org.testcontainers.junit.jupiter.TestcontainersExtension.beforeAll(TestcontainersExtension.java:56)
|
|
2024-05-01T10:17:11.7462321Z at java.base@17.0.10/java.util.ArrayList.forEach(ArrayList.java:1511)
|
|
2024-05-01T10:17:11.7462807Z at java.base@17.0.10/java.util.ArrayList.forEach(ArrayList.java:1511)
|
|
----
|
|
|
|
If you look on the server-side (logs on the Pulsar docker container) you will see a cause similar to the following:
|
|
|
|
[source,shell]
|
|
----
|
|
Caused by: java.security.cert.CertPathValidatorException: validity check failed
|
|
at sun.security.provider.certpath.PKIXMasterCertPathValidator.validate(PKIXMasterCertPathValidator.java:135) ~[?:?]
|
|
at sun.security.provider.certpath.PKIXCertPathValidator.validate(PKIXCertPathValidator.java:224) ~[?:?]
|
|
at sun.security.provider.certpath.PKIXCertPathValidator.validate(PKIXCertPathValidator.java:144) ~[?:?]
|
|
at sun.security.provider.certpath.PKIXCertPathValidator.engineValidate(
|
|
~[io.netty-netty-handler-4.1.105.Final.jar:4.1.105.Final]
|
|
at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1338) ~[io.netty-netty-handler-4.1.105.Final.jar:4.1.105.Final]
|
|
... 20 more
|
|
Caused by: java.security.cert.CertificateExpiredException: NotAfter: Tue Apr 30 20:49:10 UTC 2024
|
|
----
|
|
|
|
==== Cause
|
|
The SSL certs have expired.
|
|
|
|
==== Solution
|
|
Update the SSL certs.
|
|
|
|
* Replace the JKS `.p12` files (`./src/intTest/resources/ssl/jks`) with the https://github.com/spring-projects/spring-boot/tree/main/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-kafka/src/test/resources/ssl[latest JKS p12 files from Spring Boot].
|
|
|
|
* Replace the PEM `.crt` + `.key` files (`./src/intTest/resources/ssl/pem`) with the https://github.com/spring-projects/spring-boot/tree/main/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-redis/src/test/resources/ssl[latest PEM .crt + .key files from Spring Boot].
|
|
|
|
Run the `SamplePulsarApplicationSslTests` test locally to ensure all is good.
|