The test test_external_idp is failing in rawhide, see the nightly test results in PR #3387 with the following logs and report:
test_external_idp
self = <ipatests.test_integration.test_idp.TestIDPKeycloak object at 0x7f67030a5be0> def test_auth_keycloak_idp(self): """ Test case to check that OAuth 2.0 Device Authorization Grant is working as expected for user configured with external idp. """ create_keycloak.setup_keycloakserver(self.client) time.sleep(60) create_keycloak.setup_keycloak_client(self.client) tasks.kinit_admin(self.master) cmd = ["ipa", "idp-add", "keycloakidp", "--provider=keycloak", "--client-id=ipa_oidc_client", "--org=master", "--base-url={0}:8443/auth".format(self.client.hostname)] self.master.run_command(cmd, stdin_text="{0}\n{0}".format( self.client.config.admin_password)) tasks.user_add(self.master, 'keycloakuser', extra_args=["--user-auth-type=idp", "--idp-user-id=testuser1@ipa.test", "--idp=keycloakidp"] ) list_user = self.master.run_command( ["ipa", "user-find", "--idp-user-id=testuser1@ipa.test"] ) assert "keycloakuser" in list_user.stdout_text list_by_idp = self.master.run_command(["ipa", "user-find", "--idp=keycloakidp"] ) assert "keycloakuser" in list_by_idp.stdout_text list_by_user = self.master.run_command( ["ipa", "user-find", "--idp-user-id=testuser1@ipa.test", "--all"] ) assert "keycloakidp" in list_by_user.stdout_text tasks.clear_sssd_cache(self.master) > kinit_idp(self.master, 'keycloakuser', keycloak_server=self.client)
The test is setting up a keycloak server, then adds a user in IdM that tries to connect using the keycloak server as external idp.
The test performs kinit -n -c /tmp/armor then kinit -T /tmp/armor keycloakuser. The second kinit should prompt Authenticate at XXX and press ENTER but fails with kinit: Pre-authentication failed: Invalid argument while getting initial credentials.
kinit -n -c /tmp/armor
kinit -T /tmp/armor keycloakuser
Authenticate at XXX and press ENTER
kinit: Pre-authentication failed: Invalid argument while getting initial credentials
The journal logs show the following error:
Feb 12 07:45:06 master.ipa.test ipa-otpd[29572]: LDAP: ldapi://%2Frun%2Fslapd-IPA-TEST.socket Feb 12 07:45:06 master.ipa.test ipa-otpd[29572]: keycloakuser@IPA.TEST: request received Feb 12 07:45:06 master.ipa.test ipa-otpd[29572]: keycloakuser@IPA.TEST: user query start Feb 12 07:45:06 master.ipa.test ipa-otpd[29572]: keycloakuser@IPA.TEST: user query end: uid=keycloakuser,cn=users,cn=accounts,dc=ipa,dc=test Feb 12 07:45:06 master.ipa.test ipa-otpd[29572]: keycloakuser@IPA.TEST: idp query start: cn=keycloakidp,cn=idp,dc=ipa,dc=test Feb 12 07:45:06 master.ipa.test ipa-otpd[29572]: keycloakuser@IPA.TEST: idp query end: keycloakidp Feb 12 07:45:06 master.ipa.test ipa-otpd[29572]: keycloakuser@IPA.TEST: oauth2 start: Get device code Feb 12 07:45:06 master.ipa.test oidc_child[29573]: oidc_child started. Feb 12 07:45:06 master.ipa.test oidc_child[29573]: Running with effective IDs: [0][0]. Feb 12 07:45:06 master.ipa.test oidc_child[29573]: Running with real IDs [0][0]. Feb 12 07:45:06 master.ipa.test oidc_child[29573]: POST data: [client_id=ipa_oidc_client&scope=openid%20email]. Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * Host replica0.ipa.test:8443 was resolved. Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * IPv6: (none) Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * IPv4: 192.168.121.70 Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * Trying 192.168.121.70:8443... Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * Connected to replica0.ipa.test (192.168.121.70) port 8443 Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * ALPN: curl offers h2,http/1.1 Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * TLSv1.3 (OUT), TLS handshake, Client hello (1): Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * CAfile: /etc/pki/tls/certs/ca-bundle.crt Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * CApath: none Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * TLSv1.3 (IN), TLS handshake, Server hello (2): Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8): Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * TLSv1.3 (IN), TLS handshake, Certificate (11): Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * TLSv1.3 (IN), TLS handshake, CERT verify (15): Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * TLSv1.3 (IN), TLS handshake, Finished (20): Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1): Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * TLSv1.3 (OUT), TLS handshake, Finished (20): Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / X25519 / RSASSA-PSS Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * ALPN: server accepted h2 Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * Server certificate: Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * subject: O=IPA.TEST; CN=replica0.ipa.test Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * start date: Feb 12 07:41:44 2024 GMT Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * expire date: Feb 12 07:41:44 2026 GMT Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * subjectAltName: host "replica0.ipa.test" matched cert's "replica0.ipa.test" Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * issuer: O=IPA.TEST; CN=Certificate Authority Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * SSL certificate verify ok. Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * Certificate level 0: Public key type RSA (2048/112 Bits/secBits), signed using sha256WithRSAEncryption Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * Certificate level 1: Public key type RSA (3072/128 Bits/secBits), signed using sha256WithRSAEncryption Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * using HTTP/2 Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * [HTTP/2] [1] OPENED stream for https://replica0.ipa.test:8443/auth/realms/master/protocol/openid-connect/auth/device Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * [HTTP/2] [1] [:method: POST] Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * [HTTP/2] [1] [:scheme: https] Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * [HTTP/2] [1] [:authority: replica0.ipa.test:8443] Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * [HTTP/2] [1] [:path: /auth/realms/master/protocol/openid-connect/auth/device] Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * [HTTP/2] [1] [user-agent: SSSD oidc_child/0.0] Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * [HTTP/2] [1] [accept: application/json] Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * [HTTP/2] [1] [content-length: 46] Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * [HTTP/2] [1] [content-type: application/x-www-form-urlencoded] Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: > POST /auth/realms/master/protocol/openid-connect/auth/device HTTP/2 Host: replica0.ipa.test:8443 User-Agent: SSSD oidc_child/0.0 Accept: application/json Content-Length: 46 Content-Type: application/x-www-form-urlencoded Feb 12 07:45:06 master.ipa.test oidc_child[29573]: libcurl: * TLSv1.3 (IN), TLS handshake, Newsession Ticket (4): Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < HTTP/2 200 Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < referrer-policy: no-referrer Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < x-frame-options: SAMEORIGIN Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < strict-transport-security: max-age=31536000; includeSubDomains Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < cache-control: no-store, must-revalidate, max-age=0 Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < x-content-type-options: nosniff Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < x-xss-protection: 1; mode=block Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < content-type: application/json Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < content-length: 300 Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < Feb 12 07:45:07 master.ipa.test oidc_child[29573]: {"device_code":"jQMB0ZhatQpy7Q1lMJfnh3VdrjZBo5YRHT0erB8_m8s","user_code":"PJMN-LJVL","verification_uri":"https://replica0.ipa.test:8443/auth/realms/master/device","verification_uri_complete":"https://replica0.ipa.test:8443/auth/realms/master/device?user_code=PJMN-LJVL","expires_in":600,"interval":5}h: 300 Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: * Connection #0 to host replica0.ipa.test left intact Feb 12 07:45:07 master.ipa.test oidc_child[29573]: Failed to parse json data on line [1]: [end of file expected near 'h']. Feb 12 07:45:07 master.ipa.test oidc_child[29573]: Failed to parse device code reply. Feb 12 07:45:07 master.ipa.test oidc_child[29573]: oidc_child failed!
These lines show the issue (note the value for "interval":5}h: 300):
Feb 12 07:45:07 master.ipa.test oidc_child[29573]: {"device_code":"jQMB0ZhatQpy7Q1lMJfnh3VdrjZBo5YRHT0erB8_m8s","user_code":"PJMN-LJVL","verification_uri":"https://replica0.ipa.test:8443/auth/realms/master/device","verification_uri_complete":"https://replica0.ipa.test:8443/auth/realms/master/device?user_code=PJMN-LJVL","expires_in":600,"interval":5}h: 300 Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: * Connection #0 to host replica0.ipa.test left intact Feb 12 07:45:07 master.ipa.test oidc_child[29573]: Failed to parse json data on line [1]: [end of file expected near 'h'].
Versions: 389-ds-base-3.0.1-2.fc40.x86_64 curl-8.6.0-4.fc40.x86_64 freeipa-server-4.12.0.dev-0.fc40.x86_64 sssd-client-2.9.4-4.fc40.x86_64 (full list of packages is available here)
We are using keycloak 17.0.0 which is not supported anymore (I guess?), it would be good to investigate if this is the same with 23.0.6.
Metadata Update from @ftrivino: - Issue assigned to ftrivino
same issue with KC 23.0.6: https://github.com/freeipa-pr-ci2/freeipa/pull/3393
I'm digging into what the issue could be
it looks like 'oidc_child' fails to json_parse a malformed device_code json, I tried to use a newer version of libcurl version -6 (fixes a buffer issue) still in koji queue, no luck.
I don't see anything wrong when using curl -vvv against keycloak when requesting a token (as expected) we tried different KC versions.
so I'll debug working scenario to see if I can compare device_code responses (working/non-working)
I see weird the "libcurl: < content-length: 300", it looks like it is somehow hardcoded to a fixed size.
The output we see here includes h: 300 part which is coming out of libcurl:
h: 300
Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < content-length: 300 Feb 12 07:45:07 master.ipa.test oidc_child[29573]: libcurl: < Feb 12 07:45:07 master.ipa.test oidc_child[29573]: {"device_code":"jQMB0ZhatQpy7Q1lMJfnh3VdrjZBo5YRHT0erB8_m8s","user_code":"PJMN-LJVL","verification_uri":"https://replica0.ipa.test:8443/auth/realms/master/device","verification_uri_complete":"https://replica0.ipa.test:8443/auth/realms/master/device?user_code=PJMN-LJVL","expires_in":600,"interval":5}h: 300
300 bytes in the {"device_code"... output are ending at }, so h: 300 should not be part of the curl buffer output?
{"device_code"...
}
There is an internal change in curl 8.5/8.6 that happened late last year: https://github.com/curl/curl/commit/ad051e1cbec68b2456a22661bf0800d49d085294, it changed an interface to the writer.
I just notice this issue ticket in curl: https://github.com/curl/curl/issues/12937
that's most likely the issue, "Leftovers after chunking: 5 bytes" correlates with the version of curl that we have in rawhide.
I filed a fedora bz: https://bugzilla.redhat.com/show_bug.cgi?id=2264220
The test is now failing even earlier, in the step installing keycloak:
INFO ipatests.pytest_ipa.integration.host.Host.replica1.IPAOpenSSHTransport:transport.py:391 RUN ['su', '-', 'keycloak', '-c', '/opt/keycloak/bin/kc.sh build'] DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:513 RUN ['su', '-', 'keycloak', '-c', '/opt/keycloak/bin/kc.sh build'] DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 Updating the configuration and installing your custom providers, if any. Please wait. DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 ERROR: Failed to run 'build' command. DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 ERROR: io.quarkus.builder.BuildException: Build failure: Build failed due to errors DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 [error]: Build step io.quarkus.deployment.steps.ClassTransformingBuildStep#handleClassTransformation threw an exception: java.lang.IllegalStateException: java.util.concurrent.ExecutionException: org.hibernate.bytecode.enhance.spi.EnhancementException: Failed to enhance class org.keycloak.models.jpa.entities.GroupEntity DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:891) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.builder.BuildContext.run(BuildContext.java:277) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2449) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1478) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.lang.Thread.run(Thread.java:1583) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.jboss.threads.JBossThread.run(JBossThread.java:501) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 Caused by: java.util.concurrent.ExecutionException: org.hibernate.bytecode.enhance.spi.EnhancementException: Failed to enhance class org.keycloak.models.jpa.entities.GroupEntity DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.steps.ClassTransformingBuildStep.handleClassTransformation(ClassTransformingBuildStep.java:232) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.lang.reflect.Method.invoke(Method.java:580) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:882) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 ... 6 more DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 Caused by: org.hibernate.bytecode.enhance.spi.EnhancementException: Failed to enhance class org.keycloak.models.jpa.entities.GroupEntity DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.hibernate.bytecode.enhance.internal.bytebuddy.EnhancerImpl.enhance(EnhancerImpl.java:138) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.hibernate.orm.deployment.HibernateEntityEnhancer$HibernateEnhancingClassVisitor.hibernateEnhancement(HibernateEntityEnhancer.java:86) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.hibernate.orm.deployment.HibernateEntityEnhancer$HibernateEnhancingClassVisitor.visitEnd(HibernateEntityEnhancer.java:79) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.objectweb.asm.ClassReader.accept(ClassReader.java:748) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.objectweb.asm.ClassReader.accept(ClassReader.java:424) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.steps.ClassTransformingBuildStep.transformClass(ClassTransformingBuildStep.java:321) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.steps.ClassTransformingBuildStep$2.call(ClassTransformingBuildStep.java:205) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.steps.ClassTransformingBuildStep$2.call(ClassTransformingBuildStep.java:192) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.lang.Thread.run(Thread.java:1583) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 Caused by: java.lang.IllegalArgumentException: Java 21 (65) is not supported by the current version of Byte Buddy which officially supports Java 18 (62) - update Byte Buddy or set net.bytebuddy.experimental as a VM property DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.utility.OpenedClassReader.of(OpenedClassReader.java:96) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default.parse(TypePool.java:855) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default.doDescribe(TypePool.java:841) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default$WithLazyResolution.access$001(TypePool.java:921) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default$WithLazyResolution.doResolve(TypePool.java:1019) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default$WithLazyResolution$LazyTypeDescription.delegate(TypePool.java:1088) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.type.TypeDescription$AbstractBase$OfSimpleType$WithDelegation.getEnclosingType(TypeDescription.java:8394) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$ForParameterizedType$LazyParameterizedType.getOwnerType(TypePool.java:5409) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Substitutor.onParameterizedType(TypeDescription.java:1874) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Substitutor$ForDetachment.onParameterizedType(TypeDescription.java:2047) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.type.TypeDescription$Generic$OfParameterizedType.accept(TypeDescription.java:5055) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.type.TypeDescription$Generic$LazyProjection.accept(TypeDescription.java:6218) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.field.FieldDescription$AbstractBase.asToken(FieldDescription.java:195) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.field.FieldDescription$AbstractBase.asToken(FieldDescription.java:118) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.field.FieldList$AbstractBase.asTokenList(FieldList.java:64) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.dynamic.scaffold.InstrumentedType$Factory$Default$1.represent(InstrumentedType.java:436) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.ByteBuddy.redefine(ByteBuddy.java:866) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.hibernate.bytecode.enhance.internal.bytebuddy.EnhancerImpl.lambda$enhance$0(EnhancerImpl.java:133) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.rewrite(ByteBuddyState.java:144) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.hibernate.bytecode.enhance.internal.bytebuddy.EnhancerImpl.enhance(EnhancerImpl.java:132) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 ... 11 more DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 ERROR: Build failure: Build failed due to errors DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 [error]: Build step io.quarkus.deployment.steps.ClassTransformingBuildStep#handleClassTransformation threw an exception: java.lang.IllegalStateException: java.util.concurrent.ExecutionException: org.hibernate.bytecode.enhance.spi.EnhancementException: Failed to enhance class org.keycloak.models.jpa.entities.GroupEntity DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:891) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.builder.BuildContext.run(BuildContext.java:277) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2449) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1478) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.lang.Thread.run(Thread.java:1583) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.jboss.threads.JBossThread.run(JBossThread.java:501) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 Caused by: java.util.concurrent.ExecutionException: org.hibernate.bytecode.enhance.spi.EnhancementException: Failed to enhance class org.keycloak.models.jpa.entities.GroupEntity DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.steps.ClassTransformingBuildStep.handleClassTransformation(ClassTransformingBuildStep.java:232) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.lang.reflect.Method.invoke(Method.java:580) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:882) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 ... 6 more DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 Caused by: org.hibernate.bytecode.enhance.spi.EnhancementException: Failed to enhance class org.keycloak.models.jpa.entities.GroupEntity DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.hibernate.bytecode.enhance.internal.bytebuddy.EnhancerImpl.enhance(EnhancerImpl.java:138) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.hibernate.orm.deployment.HibernateEntityEnhancer$HibernateEnhancingClassVisitor.hibernateEnhancement(HibernateEntityEnhancer.java:86) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.hibernate.orm.deployment.HibernateEntityEnhancer$HibernateEnhancingClassVisitor.visitEnd(HibernateEntityEnhancer.java:79) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.objectweb.asm.ClassReader.accept(ClassReader.java:748) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.objectweb.asm.ClassReader.accept(ClassReader.java:424) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.steps.ClassTransformingBuildStep.transformClass(ClassTransformingBuildStep.java:321) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.steps.ClassTransformingBuildStep$2.call(ClassTransformingBuildStep.java:205) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at io.quarkus.deployment.steps.ClassTransformingBuildStep$2.call(ClassTransformingBuildStep.java:192) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at java.base/java.lang.Thread.run(Thread.java:1583) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 Caused by: java.lang.IllegalArgumentException: Java 21 (65) is not supported by the current version of Byte Buddy which officially supports Java 18 (62) - update Byte Buddy or set net.bytebuddy.experimental as a VM property DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.utility.OpenedClassReader.of(OpenedClassReader.java:96) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default.parse(TypePool.java:855) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default.doDescribe(TypePool.java:841) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default$WithLazyResolution.access$001(TypePool.java:921) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default$WithLazyResolution.doResolve(TypePool.java:1019) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default$WithLazyResolution$LazyTypeDescription.delegate(TypePool.java:1088) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.type.TypeDescription$AbstractBase$OfSimpleType$WithDelegation.getEnclosingType(TypeDescription.java:8394) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.pool.TypePool$Default$LazyTypeDescription$GenericTypeToken$ForParameterizedType$LazyParameterizedType.getOwnerType(TypePool.java:5409) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Substitutor.onParameterizedType(TypeDescription.java:1874) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.type.TypeDescription$Generic$Visitor$Substitutor$ForDetachment.onParameterizedType(TypeDescription.java:2047) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.type.TypeDescription$Generic$OfParameterizedType.accept(TypeDescription.java:5055) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.type.TypeDescription$Generic$LazyProjection.accept(TypeDescription.java:6218) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.field.FieldDescription$AbstractBase.asToken(FieldDescription.java:195) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.field.FieldDescription$AbstractBase.asToken(FieldDescription.java:118) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.description.field.FieldList$AbstractBase.asTokenList(FieldList.java:64) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.dynamic.scaffold.InstrumentedType$Factory$Default$1.represent(InstrumentedType.java:436) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at net.bytebuddy.ByteBuddy.redefine(ByteBuddy.java:866) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.hibernate.bytecode.enhance.internal.bytebuddy.EnhancerImpl.lambda$enhance$0(EnhancerImpl.java:133) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.rewrite(ByteBuddyState.java:144) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 at org.hibernate.bytecode.enhance.internal.bytebuddy.EnhancerImpl.enhance(EnhancerImpl.java:132) DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 ... 11 more DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 ERROR: java.util.concurrent.ExecutionException: org.hibernate.bytecode.enhance.spi.EnhancementException: Failed to enhance class org.keycloak.models.jpa.entities.GroupEntity DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 ERROR: org.hibernate.bytecode.enhance.spi.EnhancementException: Failed to enhance class org.keycloak.models.jpa.entities.GroupEntity DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 ERROR: Failed to enhance class org.keycloak.models.jpa.entities.GroupEntity DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 ERROR: Java 21 (65) is not supported by the current version of Byte Buddy which officially supports Java 18 (62) - update Byte Buddy or set net.bytebuddy.experimental as a VM property DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:557 For more details run the same command passing the '--verbose' option. Also you can use '--help' to see the details about the usage of the particular command. DEBUG ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:transport.py:217 Exit code: 1 ERROR ipatests.pytest_ipa.integration.host.Host.replica1.cmd83:host.py:201 stderr: ERROR: Failed to run 'build' command. ERROR: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
The test is still using keycloak 17 which is an old version, we should consider switching to something more recent.
hi @frenaud , I see https://bugzilla.redhat.com/show_bug.cgi?id=2264220 was fixed, so I'm sending now PR to switch kc to 23.0.6.
Metadata Update from @ftrivino: - Custom field on_review adjusted to https://github.com/freeipa/freeipa/pull/7302
master:
ipa-4-12:
ipa-4-11:
ipa-4-10:
Metadata Update from @frenaud: - Issue close_status updated to: fixed - Issue status updated to: Closed (was: Open)
Log in to comment on this ticket.