Closed
Description
Before reporting an issue
- I have read and understood the above terms for submitting issues, and I understand that my issue may be closed without action if I do not follow them.
Area
operator
Describe the bug
Some operator tests are failing on the IPV6 environment
https://jenkins.com/view/OpenShift/job/rhbk-operator-test-pipeline/1108/
org.keycloak.operator.testsuite.integration.KeycloakNetworkPolicyTest.testJGroupsConnectivity org.keycloak.operator.testsuite.integration.KeycloakNetworkPolicyTest.testHttpAndHttps org.keycloak.operator.testsuite.integration.KeycloakNetworkPolicyTest.testServiceConnectivity org.keycloak.operator.testsuite.integration.KeycloakNetworkPolicyTest.testUpdate
Version
latest
Regression
- The issue is a regression
Expected behavior
Pass
Actual behavior
6 failures
How to Reproduce?
Run a build of the job with the IPV6 parameters
Anything else?
No response
Activity
shawkins commentedon Jan 13, 2025
The ClusteringTest failures seem to be reoccurrances of the lock issue - #34868. Added a comment there. The only thing new in the logs there related to ipv6 are repeated occurances of:
As for the other tests, those seem to be issues with the NetworkPolicy and IPv6 - cc @pruivo @ahus1 @vmuzikar
pruivo commentedon Jan 13, 2025
@Aboullos @shawkins do you know if JAVA_OPTS has
-Djava.net.preferIPv4Stack=false -Djava.net.preferIPv6Addresses=true
set? JGroups will always prefer to use IPv4.Update the documentation on how to run Keycloak IPv6 only
ahus1 commentedon Jan 13, 2025
I assume this should be added to the docs, probably here: #36393
But if this is something that the Operator tests needs to know, how would we pass on that information so the tests pass?
shawkins commentedon Jan 13, 2025
It does not.
Without additional changes I think we'll have to do this via the Keycloak CR unsupported template to add a JAVA_OPTS_APPEND env entry - there isn't a first class way to pass kc.sh env variables.
Alternatively I'd guess that the operator should be able to detect that it's running in a IPv6 environment and update things automatically.
vmuzikar commentedon Jan 13, 2025
+1 to this approach
ahus1 commentedon Jan 14, 2025
@pruivo - I'm still surprised that JGroups don't pick the IPv6 if it doesn't find an IPv4 address. Preferring IPv4 is one thing, ignoring IPv6 another. Can this be changed to use IPv6 automatically if no IPv4 is available except for the loopback?
I marked the PR #36393 to now be related and no longer closing this PR as @shawkins was suggesting to automatically detect IPv6.
35 remaining items