Skip to content

Releases: dasniko/testcontainers-keycloak

2.5.0: Keycloak 21, Extensible Keycloak Container

23 Feb 12:19
Compare
Choose a tag to compare

What's Changed

  • [#98] Add generics to the KeycloakContainer class by @nils-christian in #100
  • Since a few versions, Keycloak Containers have moving tags with major.minor version. From now on, the defaults in this repository also are based on the moving tags. This means, that if you just use the defaults, you will use 21.0 which is 21.0.0 as of the time writing this note. If there will be a 21.0.1 or any other 21.0.x release, you just have to pull a new Docker image with 21.0 which then yields to most recent version. No update to this lib is needed.
    Or, of course, you can still pin your desired version by specifying the concrete imagename:version in the constructor.

New Contributors

Full Changelog: 2.4.0...2.5.0

2.4.0: Keycloak 20, Caching & Mutual TLS

02 Nov 11:29
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 2.3.0...2.4.0

Bump to Keycloak 19.0.0

27 Jul 16:17
Compare
Choose a tag to compare
2.3.0

[maven-release-plugin] copy for tag 2.3.0

2.2.2: Admin client connection with TLS

13 May 09:28
Compare
Choose a tag to compare

What's Changed

  • Fix Admin client cannot connect when TLS is enabled by @hasalex in #76

2.2.1.: Import of Realm files in subdirectories

01 May 11:26
Compare
Choose a tag to compare

What's Changed

  • Allow import realm files from directories by @aivinog1 in #74

New Contributors

Full Changelog: 2.2.0...2.2.1

2.2.0: Keycloak 18 Support

26 Apr 19:31
Compare
Choose a tag to compare
  • upgrade Keycloak Docker image to 18.0.0
  • using the again-available --import-realm option, thus removing the manual approach with the keycloak-admin-client, less code to maintain
  • use the start-dev mode again, as it makes no difference in using this compared to use all the other single commands and it's easier to maintain

2.1.2: Bug fixes / maintenance

24 Mar 09:48
Compare
Choose a tag to compare
  • Don't rely on Maven directory when building temporary extension deployment (will enable usage with Gradle etc.).
  • Don't try to re-import a realm when a container is reused.
  • Use Thread.currentThread().getContextClassLoader() in certain cases for importing realm files (will be removed completely again, as soon Keycloak supports auto-import of realms again)
  • Upgrade to Keycloak 17.0.1

2.1.1: Revert RestEasy version changes

07 Mar 23:29
Compare
Choose a tag to compare

The dependency version changes in release 2.1.0 were wrong... blame on me!
This release revert these changes again.

2.1.0: Ability to add external libraries

06 Mar 08:54
Compare
Choose a tag to compare

Don't use this version!!! Use 2.1.1 instead!!!


Changes

The auto-build flag is now used always, not matter if really needed or not.
This makes adding custom resources which need a build before a lot easier.
The most use cases need a build anyway, so this shouldn't matter that much.

Fixes

The Java Admin Client now uses RestEasy dependency versions aligned with the Keycloak runtime.
Before, this could lead to a version clash and exceptions during runtime, if you were using different versions in your tests.

New Features

It's now possible to add 3rd party libs, like e.g. further dependencies or other files, to your KeycloakContainer /providers folder with the new .withProviderLibsFrom(...) method.
See README.md for further details and also a linked example for how to add dependencies from your maven pom.xml

Keycloak 17 support (Quarkus-based distribution)

15 Feb 12:27
Compare
Choose a tag to compare

Breaking Changes

  • The new base image is the Quarkus-based distribution of Keycloak
    This version branch WILL NOT work with legacy (Wildfly-based) Keycloak distributions!
  • if you used withExtensionClassesFrom(), you have to change it to withProviderClassesFrom() method
  • the URL returned by getAuthServerUrl() now has a trailing /, possibly you have to change the way you construct/concatenate your paths, you can adjust your custom context path with .withContextPath(...)

New Features

  • the Keycloak admin client org.keycloak:keycloak-admin-client is now a transitive dependency of this library and can be used right out of the box by calling keycloakContainer.getKeycloakAdminClient().
  • you can adjust your custom context path with .withContextPath(...)
  • additionally to TLS config with certificate and key file, you can now use a ready built Java keystore with .useTlsKeystore(keystoreFilename, keystorePassword)
  • you can enable/disable Keycloak features with .withFeaturesEnabled(features...) and .withFeaturesDisabled(features...)

Other Changes

  • Java 11 is now the minimum Java version for development
  • Testing with JUnit 5 support
  • License changed to Apache License 2.0