From 9a46b455f6abcc90f361f6cf45ba0b380a5dbd82 Mon Sep 17 00:00:00 2001 From: Giovanni Toraldo Date: Tue, 19 Sep 2023 13:53:32 +0200 Subject: [PATCH 1/5] Fix admin login redirect when running locally --- roles/keycloak_quarkus/defaults/main.yml | 1 + roles/keycloak_quarkus/templates/keycloak.conf.j2 | 1 + 2 files changed, 2 insertions(+) diff --git a/roles/keycloak_quarkus/defaults/main.yml b/roles/keycloak_quarkus/defaults/main.yml index bd98cdb8..bb7eb799 100644 --- a/roles/keycloak_quarkus/defaults/main.yml +++ b/roles/keycloak_quarkus/defaults/main.yml @@ -28,6 +28,7 @@ keycloak_quarkus_master_realm: master ### Configuration settings keycloak_quarkus_bind_address: 0.0.0.0 keycloak_quarkus_host: localhost +keycloak_quarkus_port: 8080 keycloak_quarkus_http_enabled: True keycloak_quarkus_http_port: 8080 keycloak_quarkus_https_port: 8443 diff --git a/roles/keycloak_quarkus/templates/keycloak.conf.j2 b/roles/keycloak_quarkus/templates/keycloak.conf.j2 index ab883fc7..7285c482 100644 --- a/roles/keycloak_quarkus/templates/keycloak.conf.j2 +++ b/roles/keycloak_quarkus/templates/keycloak.conf.j2 @@ -25,6 +25,7 @@ https-certificate-key-file={{ keycloak_quarkus_key_file }} # Hostname for the Keycloak server. hostname={{ keycloak_quarkus_host }} +hostname-port={{ keycloak_quarkus_port }} hostname-path={{ keycloak_quarkus_http_relative_path }} # Cluster From 9c361c96280b67f76938212b796a019e5002ed15 Mon Sep 17 00:00:00 2001 From: Giovanni Toraldo Date: Tue, 19 Sep 2023 13:56:51 +0200 Subject: [PATCH 2/5] add in README --- roles/keycloak_quarkus/README.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/roles/keycloak_quarkus/README.md b/roles/keycloak_quarkus/README.md index b528944e..03bd4e2f 100644 --- a/roles/keycloak_quarkus/README.md +++ b/roles/keycloak_quarkus/README.md @@ -22,9 +22,10 @@ Role Defaults |`keycloak_quarkus_db_enabled`| Enable auto configuration for database backend | `True` if `keycloak_quarkus_ha_enabled` is True, else `False` | |`keycloak_quarkus_admin_user`| Administration console user account | `admin` | |`keycloak_quarkus_bind_address`| Address for binding service ports | `0.0.0.0` | -|`keycloak_quarkus_host`| hostname | `localhost` | -|`keycloak_quarkus_http_port`| HTTP port | `8080` | -|`keycloak_quarkus_https_port`| TLS HTTP port | `8443` | +|`keycloak_quarkus_host`| Hostname from where application is reachable by clients | `localhost` | +|`keycloak_quarkus_port`| Port from where application is reachable by clients | `8080` | +|`keycloak_quarkus_http_port`| HTTP listening port | `8080` | +|`keycloak_quarkus_https_port`| TLS HTTP listening port | `8443` | |`keycloak_quarkus_ajp_port`| AJP port | `8009` | |`keycloak_quarkus_jgroups_port`| jgroups cluster tcp port | `7600` | |`keycloak_quarkus_service_user`| Posix account username | `keycloak` | From 38ff5196249c84646ef08760e8d2374c91de24f1 Mon Sep 17 00:00:00 2001 From: Giovanni Toraldo Date: Tue, 19 Sep 2023 14:00:15 +0200 Subject: [PATCH 3/5] update arguments --- roles/keycloak_quarkus/meta/argument_specs.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/roles/keycloak_quarkus/meta/argument_specs.yml b/roles/keycloak_quarkus/meta/argument_specs.yml index 8e7f08a7..8967633f 100644 --- a/roles/keycloak_quarkus/meta/argument_specs.yml +++ b/roles/keycloak_quarkus/meta/argument_specs.yml @@ -90,10 +90,13 @@ argument_specs: description: "Address for binding service ports" type: "str" keycloak_quarkus_host: - # line 28 of defaults/main.yml default: "localhost" - description: "hostname" + description: "Hostname from where application is reachable by clients" type: "str" + keycloak_quarkus_port: + default: 8080 + description: "Port from where application is reachable by clients" + type: "int" keycloak_quarkus_http_enabled: default: true description: "Enable listener on HTTP port" From f0f90b8930cd274d06842689fa3b7dd0b50d52a6 Mon Sep 17 00:00:00 2001 From: Giovanni Toraldo Date: Tue, 19 Sep 2023 17:05:00 +0200 Subject: [PATCH 4/5] apply review suggestions --- roles/keycloak_quarkus/README.md | 4 ++-- roles/keycloak_quarkus/defaults/main.yml | 2 +- roles/keycloak_quarkus/meta/argument_specs.yml | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/roles/keycloak_quarkus/README.md b/roles/keycloak_quarkus/README.md index 03bd4e2f..578b6fe6 100644 --- a/roles/keycloak_quarkus/README.md +++ b/roles/keycloak_quarkus/README.md @@ -22,8 +22,8 @@ Role Defaults |`keycloak_quarkus_db_enabled`| Enable auto configuration for database backend | `True` if `keycloak_quarkus_ha_enabled` is True, else `False` | |`keycloak_quarkus_admin_user`| Administration console user account | `admin` | |`keycloak_quarkus_bind_address`| Address for binding service ports | `0.0.0.0` | -|`keycloak_quarkus_host`| Hostname from where application is reachable by clients | `localhost` | -|`keycloak_quarkus_port`| Port from where application is reachable by clients | `8080` | +|`keycloak_quarkus_host`| Hostname for the Keycloak server | `localhost` | +|`keycloak_quarkus_port`| The port used by the proxy when exposing the hostname | `-1` | |`keycloak_quarkus_http_port`| HTTP listening port | `8080` | |`keycloak_quarkus_https_port`| TLS HTTP listening port | `8443` | |`keycloak_quarkus_ajp_port`| AJP port | `8009` | diff --git a/roles/keycloak_quarkus/defaults/main.yml b/roles/keycloak_quarkus/defaults/main.yml index bb7eb799..075ba93e 100644 --- a/roles/keycloak_quarkus/defaults/main.yml +++ b/roles/keycloak_quarkus/defaults/main.yml @@ -28,7 +28,7 @@ keycloak_quarkus_master_realm: master ### Configuration settings keycloak_quarkus_bind_address: 0.0.0.0 keycloak_quarkus_host: localhost -keycloak_quarkus_port: 8080 +keycloak_quarkus_port: -1 keycloak_quarkus_http_enabled: True keycloak_quarkus_http_port: 8080 keycloak_quarkus_https_port: 8443 diff --git a/roles/keycloak_quarkus/meta/argument_specs.yml b/roles/keycloak_quarkus/meta/argument_specs.yml index 8967633f..59f3e505 100644 --- a/roles/keycloak_quarkus/meta/argument_specs.yml +++ b/roles/keycloak_quarkus/meta/argument_specs.yml @@ -91,11 +91,11 @@ argument_specs: type: "str" keycloak_quarkus_host: default: "localhost" - description: "Hostname from where application is reachable by clients" + description: "Hostname for the Keycloak server" type: "str" keycloak_quarkus_port: - default: 8080 - description: "Port from where application is reachable by clients" + default: -1 + description: "The port used by the proxy when exposing the hostname" type: "int" keycloak_quarkus_http_enabled: default: true From 194101f01041b719485cc3035d3f48ffffc01449 Mon Sep 17 00:00:00 2001 From: Giovanni Toraldo Date: Tue, 19 Sep 2023 17:14:17 +0200 Subject: [PATCH 5/5] add new playbook example for localhost quarkus --- playbooks/keycloak_quarkus.yml | 5 +++-- playbooks/keycloak_quarkus_dev.yml | 13 +++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 playbooks/keycloak_quarkus_dev.yml diff --git a/playbooks/keycloak_quarkus.yml b/playbooks/keycloak_quarkus.yml index 9e1d3f99..7c657b7f 100644 --- a/playbooks/keycloak_quarkus.yml +++ b/playbooks/keycloak_quarkus.yml @@ -1,9 +1,10 @@ --- -- name: Playbook for Keycloak X Hosts +- name: Playbook for Keycloak X Hosts with HTTPS enabled hosts: all vars: keycloak_admin_password: "remembertochangeme" - keycloak_quarkus_host: localhost:8443 + keycloak_quarkus_host: localhost + keycloak_quarkus_port: 8443 keycloak_quarkus_http_relative_path: '' keycloak_quarkus_log: file keycloak_quarkus_https_enabled: True diff --git a/playbooks/keycloak_quarkus_dev.yml b/playbooks/keycloak_quarkus_dev.yml new file mode 100644 index 00000000..634296d1 --- /dev/null +++ b/playbooks/keycloak_quarkus_dev.yml @@ -0,0 +1,13 @@ +--- +- name: Playbook for Keycloak X Hosts in develop mode + hosts: all + vars: + keycloak_admin_password: "remembertochangeme" + keycloak_quarkus_host: localhost + keycloak_quarkus_port: 8080 + keycloak_quarkus_http_relative_path: '' + keycloak_quarkus_log: file + keycloak_quarkus_start_dev: true + keycloak_quarkus_proxy_mode: none + roles: + - middleware_automation.keycloak.keycloak_quarkus