# middleware_automation.keycloak Release Notes — Keycloak Ansible Collection documentation

# middleware_automation.keycloak Release Notes

This changelog describes changes after version 0.2.6.

## v3.0.11-devel

### Minor Changes

- Fix health check URL to include HTTP relative path #364

- fix(keycloak_quarkus): avoid leaking maven provider password in logs #363

### Bugfixes

- AMW-592 AMW Github Actions are failing because of latest molecule #366

## v3.0.10

### Major Changes

- Fixing linting issues #357

### Minor Changes

- AMW-571 keycloak_identity_provider hide_on_login_page not working #356

- Fixing vars naming issue #359

- Removing from __future__ import annotations broke runtime type hints using Sequence and union syntax, causing sanity import failures and molecule module errors #358

## v3.0.9

### Bugfixes

- AMW-551 Providing correct rhbk version #344

## v3.0.8

## v3.0.7

### Major Changes

- Migrate Keycloak modules from the community.general collection to Keycloak collection. #341

### Minor Changes

- Fixing common module usage #343

- fix #336: https://github.com/ansible-middleware/common/pull/38 #338

### Bugfixes

- Fix molecule tests #339

## v3.0.6

### Major Changes

- AMW-540 Fix the upstream collection requirements with common v1.2.4 #337

## v3.0.5

### Minor Changes

- AMW-528 Deployment fails in keycloak_quarkus due to missing escalation variables #335

## v3.0.4

### Major Changes

- AMW-467 Download keycloak binary from password protected HTTP location #321

- v26.4.x compability #317

### Minor Changes

- AMW-518 Validating arguments against arg spec ‘main’ fails unexpectedly. #324

### Bugfixes

- Removing parseable from lint file as Additional properties are not allowed #319

## v3.0.3

### Major Changes

- Update to keycloak 26.3.0 #293

- ansible-core 2.19 compatibility #310

### Minor Changes

- Allow to install provider jars from remote paths #303

- Declared proxy_mode as deprecated, updated quarkus and realm readme #306

- Fix config_key_store_file description to match variable name #308

### Bugfixes

- keycloak collection CI label is showing no status #312

- keycloak_realm: allow secret in keycloak_clients #304

## v3.0.2

### Minor Changes

- New `checksum` property for keycloak_quarkus_providers #280

- New parameter to set the jgroups host IP address #281

- Session storage / distributed caches #287

- Update keycloak/RHBK to v26.2.4 #283

### Bugfixes

- Fix `keycloak_quarkus_force_install` parameter being ignored by install #296

- Fix alternate download location being ignored (JBossNeworkAPI always used) #298

- Run config rebuild after SPI providers update #285

- Use jdk21 as default in debian #289

- keycloak_realm: federation default provider type should be a string #302

## v3.0.1

### Minor Changes

- Version update to 26.0.8 / rhbk 26.0.11 #277

### Bugfixes

- Trigger rebuild handler on envvars file change #276

## v3.0.0

### Minor Changes

- Add theme cache invalidation handler #252

- keycloak_realm: change url variables to defaults #268

### Breaking Changes / Porting Guide

- Bump major and ansible-core versions #266

- Rename parameters to follow upstream #270

- Update for keycloak v26 #254

### Bugfixes

- Access token lifespan is too short for ansible run #251

- Load environment vars during kc rebuild #274

- Rebuild config and restart service for local providers #250

- Rename and honour parameter `keycloak_quarkus_http_host` #271

### New Modules

- middleware_automation.keycloak.keycloak_realm - Allows administration of Keycloak realm via Keycloak API

## v2.4.3

### Minor Changes

- Update keycloak to 24.0.5 #241

## v2.4.2

### Minor Changes

- New parameter `keycloak_quarkus_download_path` #239

### Bugfixes

- Add wait_for_port number parameter #237

## v2.4.1

### Release Summary

Internal release, documentation or test changes only.

## v2.4.0

### Major Changes

- Enable by default health check on restart #234

- Update minimum ansible-core version > 2.15 #232

## v2.3.0

### Major Changes

- Allow for custom providers hosted on maven repositories #223

- Restart handler strategy behaviour #231

### Minor Changes

- Add support for policy files #225

- Allow to add extra custom env vars in sysconfig file #229

- Download from alternate URL with optional http authentication #220

- Update Keycloak to version 24.0.4 #218

- `proxy-header` enhancement #227

### Bugfixes

- `kc.sh build` uses configured jdk #211

## v2.2.2

### Minor Changes

- Copying of key material for TLS configuration #210

- Validate certs parameter for JDBC driver downloads #207

### Bugfixes

- Turn off controller privilege escalation #209

## v2.2.1

### Release Summary

Internal release, documentation or test changes only.

### Bugfixes

- JDBC provider: fix clause in argument validation #204

## v2.2.0

### Major Changes

- Support java keystore for configuration of sensitive options #189

### Minor Changes

- Add `wait_for_port` and `wait_for_log` systemd unit logic #199

- Customize jdbc driver downloads, optional authentication #202

- Keystore-based vault SPI configuration #196

- New `keycloak_quarkus_hostname_strict_https` parameter #195

- Providers config and custom providers #201

- Remove administrator credentials from files once keycloak is bootstrapped #197

- Update keycloak to 24.0 #194

## v2.1.2

### Release Summary

Internal release, documentation or test changes only.

## v2.1.1

### Minor Changes

- Add reverse `proxy_headers` config, supersedes `proxy_mode` #187

- Debian/Ubuntu compatibility #178

- Use `keycloak_realm` as default for sub-entities #180

### Bugfixes

- Fix permissions on controller-side downloaded artifacts #184

- JVM args moved to `JAVA_OPTS` envvar (instead of JAVA_OPTS_APPEND) #186

- Unrelax configuration file permissions #191

- Utilize comment filter for `ansible_managed` annotations #176

## v2.1.0

### Major Changes

- Implement infinispan TCPPING discovery protocol #159

### Minor Changes

- Set enable-recovery when xa transactions are enabled #167

- keycloak_quarkus: Allow configuring log rotate options in quarkus configuration #161

- keycloak_quarkus: `sticky-session` for infinispan routes #163

### Breaking Changes / Porting Guide

- keycloak_quarkus: renamed infinispan host list configuration #157

### Bugfixes

- keycloak_quarkus: fix custom JAVA_HOME parameter name #171

## v2.0.2

### Minor Changes

- keycloak_quarkus: Add support for sqlserver jdbc driver #148

- keycloak_quarkus: allow configuration of `hostname-strict-backchannel` #152

- keycloak_quarkus: systemd restart behavior #145

### Bugfixes

- keycloak_quarkus: Use `keycloak_quarkus_java_opts` #154

- keycloak_quarkus: allow ports <1024 (e.g. :443) in systemd unit #150

## v2.0.1

### Minor Changes

- keycloak_quarkus: add hostname-strict parameter #139

- keycloak_quarkus: update to version 23.0.1 #133

### Bugfixes

- keycloak_quarkus: template requires lowercase boolean values #138

## v2.0.0

### Minor Changes

- Add new parameter for port offset configuration #124

- Update Keycloak to version 22.0.5 #122

### Breaking Changes / Porting Guide

- Add support for more http-related configs #115

- Update minimum ansible-core version > 2.14 #119

- keycloak_quarkus: enable config of key store and trust store #116

## v1.3.0

### Major Changes

- Run service as `keycloak_service_user` #106

### Minor Changes

- keycloak_quarkus: Update Keycloak to version 22.0.3 #112

- keycloak_quarkus: fix admin console redirect when running locally #111

- keycloak_quarkus: skip proxy config if `keycloak_quarkus_proxy_mode` is `none` #109

### Bugfixes

- keycloak_quarkus: fix validation failure upon port configuration change #113

## v1.2.8

### Minor Changes

- keycloak_quarkus: set openjdk 17 as default #103

- keycloak_quarkus: update to version 22.0.1 #107

### Bugfixes

- Fix incorrect checks for `keycloak_jgroups_subnet` #98

- Undefine `keycloak_db_valid_conn_sql` default #91

- Update bindep.txt package python3-devel to support RHEL9 #105

## v1.2.7

### Minor Changes

- Allow to override jgroups subnet #93

- keycloak-quarkus: update keycloakx to v21.1.1 #92

## v1.2.6

### Minor Changes

- Add profile features enabling/disabling #87

- Improve service restart behavior configuration #88

- Update default xa_datasource_class value for mariadb jdbc configuration #89

### Bugfixes

- Handle WFLYCTL0117 when background validation millis is 0 #90

## v1.2.5

### Minor Changes

- Add configuration for database connection pool validation #85

- Allow to configure administration endpoint URL #86

- Allow to force backend URLs to frontend URLs #84

- Introduce systemd unit restart behavior #81

## v1.2.4

### Minor Changes

- Add `sqlserver` to keycloak role jdbc configurations #78

- Add configurability for XA transactions #73

### Bugfixes

- Fix deprecation warning for `ipaddr` #77

- Fix undefined facts when offline patching sso #71

## v1.2.1

### Minor Changes

- Allow to setup keycloak HA cluster without remote cache store #68

### Bugfixes

- Pass attributes to realm clients #69

## v1.2.0

### Major Changes

- Provide config for multiple modcluster proxies #60

### Minor Changes

- Allow to configure TCPPING for cluster discovery #62

- Drop community.general from dependencies #61

- Switch middleware_automation.redhat_csp_download for middleware_automation.common #63

- Switch to middleware_automation.common for rh-sso patching #64

## v1.1.1

### Bugfixes

- keycloak-quarkus: fix `cache-config-file` path in keycloak.conf.j2 template #53

## v1.1.0

### Minor Changes

- Update keycloak to 18.0.2 - sso to 7.6.1 #46

- Variable `keycloak_no_log` controls ansible `no_log` parameter (for debugging purposes) #47

- Variables to override service start retries and delay #51

- keycloak_quarkus: variable to enable development mode #45

### Breaking Changes / Porting Guide

- Rename variables from `infinispan_` prefix to `keycloak_infinispan_` #42

### Bugfixes

- keycloak_quarkus: fix /var/log/keycloak symlink to keycloak log directory #44

## v1.0.7

### Breaking Changes / Porting Guide

- keycloak_quarkus: use absolute path for certificate files #39

### Bugfixes

- keycloak_quarkus: use become for tasks that will otherwise fail #38

## v1.0.6

### Bugfixes

- keycloak_quarkus: add selected java to PATH in systemd unit #34

- keycloak_quarkus: set logfile path correctly under keycloak home #35

## v1.0.5

### Minor Changes

- Update config options: keycloak and quarkus #32

## v1.0.4

### Release Summary

Internal release, documentation or test changes only.

## v1.0.3

### Major Changes

- New role for installing keycloak >= 17.0.0 (quarkus) #29

### Minor Changes

- Add `keycloak_config_override_template` parameter for passing a custom xml config template #30

### Bugfixes

- Make sure systemd unit starts with selected java JVM #31

## v1.0.2

### Minor Changes

- Make `keycloak_admin_password` a default with assert (was: role variable) #26

- Simplify dependency install logic and reduce play execution time #19

### Bugfixes

- Set `keycloak_frontend_url` default according to other defaults #25

## v1.0.1

### Release Summary

Minor enhancements, bug and documentation fixes.

### Major Changes

- Apply latest cumulative patch of RH-SSO automatically when new parameter `keycloak_rhsso_apply_patches` is `true` #18

### Minor Changes

- Clustered installs now perform database initialization on first node to avoid locking issues #17

## v1.0.0

### Release Summary

This is the first stable release of the `middleware_automation.keycloak` collection.