-
Notifications
You must be signed in to change notification settings - Fork 171
feat: upgrade Keycloak to recent release and deprovision operator #2078
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Coverage report
Show files with reduced coverage 🔻
Test suite run success93 tests passing in 9 suites. Report generated by 🧪jest coverage report action from 109e16e |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested upgrade from latest release in conjunction with the update versions of console and api(through raw_values).
Upgrade script was executed as expected and keycloak operator resources were removed.
Login/Logout works for platform-admin and team users. Also login to gitea argocd harbor works through oidc.
# Conflicts: # values/keycloak-operator/keycloak-operator-cr.gotmpl
📌 Summary
This PR upgrades Keycloak to a more recent and maintained release. Since the previous Operator pattern did not provide a good way of maintaining the lifecycle of this product in our platform, a change is made to a regular Helm install like the majority of our integrated projects. The Bitnami chart was chosen since it provided good practices of pre-configuration, relatively close to our current setup.
For the upgrade, it was necessary to change the platform logout URL redirect, which had already been depending on a deprecated feature. Since this was provided as a 301 HTTP response code from
/logout-otomi
, the latter had to be changed; otherwise browsers cache this response indefinitely and therefore may never follow the updated redirect. The new redirect under/platform-logout
was changed to a 302 HTTP response code to make changes easier in the future (e.g. should we rename the realm or client for rebranding purposes). As a consequence, Console and API also need to be updated accordingly.Console: https://github.com/linode/apl-console/pull/545
API: https://github.com/linode/apl-api/pull/701
🔍 Reviewer Notes
In particular, the following should be verified:
main
For the logout and closing of TTY sessions to work, the matching feature branches of APL-691 will need to be used for API and Console. Also, cleanups were made in Console regarding the login theme, which was causing 404 errors due to missing (but not needed) CSS files. In order to test the updated theme, the values (multi-line string) of the ArgoCD application
keycloak-keycloak
must be manually patched ininitContainers[0].image
todocker.io/linode/apl-console:APL-691
. When referring tomain
, it will still work the same as before, just not benefit from improvements there. These manual changes will be overwritten on any Tekton pipeline run.🧹 Checklist