ci: upgrade roundtrip Keycloak to 26.2 and run kcadm in-container (DSPX-3397) - #990
ci: upgrade roundtrip Keycloak to 26.2 and run kcadm in-container (DSPX-3397)#990dmihalcik-virtru wants to merge 1 commit into
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
2f79465 to
823cce3
Compare
3ae0223 to
45582fe
Compare
|
X-Test Failure Report |
…PX-3397) Keycloak 24.0.5 predates DPoP support, so the roundtrip job cannot exercise DPoP-bound tokens at all. Upgrade to 26.2. Two things fall out of the upgrade: - kcadm.sh can no longer be downloaded and run on the host. Keycloak 26's kcadm needs Java 17; the ubuntu-22.04 runner defaults to Java 11 and fails with UnsupportedClassVersionError. config-demo-idp.sh now shells into the keycloak container, which ships a matching JRE, via a `kcadm.sh` shell function. Passing -f to compose makes the project resolve from the script's own directory, so the caller's working directory no longer matters. This also drops the release-zip download entirely -- one less network dependency in CI. - The management endpoints (including /health/live) moved to port 9000 in Keycloak 25+. The healthcheck follows. Also drops the keycloakdb postgres service: start-dev uses the embedded H2 database, so the external postgres was already unused, and removing it takes a container out of the job. Adds admin-fine-grained-authz:v1, which 26.x requires as an explicit feature flag for the admin API calls this script makes. Signed-off-by: Dave Mihalcik <dmihalcik@virtru.com>
823cce3 to
e74922c
Compare
45582fe to
41dad28
Compare



Stack 3/6, split out of #939. Base: #989.
What
Keycloak 24.0.5 predates DPoP support, so the roundtrip job cannot exercise DPoP-bound tokens at all. Upgrading to 26.2 is the prerequisite for the DPoP work in stack 5/6; it is separated here so the infrastructure change can be validated on its own.
Changes
kcadm.shruns in the container now. Keycloak 26'skcadmneeds Java 17; theubuntu-22.04runner defaults to Java 11 and fails withUnsupportedClassVersionError.config-demo-idp.shshells into the keycloak container (which ships a matching JRE) through akcadm.shshell function. Passing-fmakes compose resolve the project from the script's own directory, so the caller's working directory no longer matters.This also deletes the release-zip download-and-unzip block — one less network dependency in CI, and the version can't drift from the running server.
Health check port. Management endpoints, including
/health/live, moved to 9000 in Keycloak 25+.Drops the
keycloakdbpostgres service.start-devuses the embedded H2 database, so the external postgres was already unused. Removes a container from the job.Adds
admin-fine-grained-authz:v1toKC_FEATURES, which 26.x requires as an explicit flag for the admin API calls this script makes.Risk
This is CI-only — no
lib/,cli/, orweb-app/code is touched. The signal is the roundtrip job itself passing.How to test
The roundtrip workflow on this PR.