mirror of
https://github.com/ansible-middleware/keycloak.git
synced 2026-03-27 13:53:04 +00:00
Compare commits
29 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dded412bd0 | ||
|
|
5b70d3db2a | ||
|
|
e3ce4bd574 | ||
|
|
af0dc3c5f1 | ||
|
|
f3104285bc | ||
|
|
cb25c28bb8 | ||
|
|
3bb32ed075 | ||
|
|
80e4df8dce | ||
|
|
194101f010 | ||
|
|
f0f90b8930 | ||
|
|
38ff519624 | ||
|
|
9c361c9628 | ||
|
|
9a46b455f6 | ||
|
|
aa7902b9c3 | ||
|
|
0f17e09731 | ||
|
|
942b5fce0f | ||
|
|
bef20b6a57 | ||
|
|
d673fcf48a | ||
|
|
b72460e464 | ||
|
|
6c65fadf31 | ||
|
|
d12f62b89d | ||
|
|
7bb9647d0d | ||
|
|
0199e554b5 | ||
|
|
276444ce0e | ||
|
|
40c015d3e1 | ||
|
|
df7fab8f41 | ||
|
|
c8ebbe72d2 | ||
|
|
91ec411699 | ||
|
|
07b1c514bb |
2
.github/workflows/ci.yml
vendored
2
.github/workflows/ci.yml
vendored
@@ -15,4 +15,4 @@ jobs:
|
||||
with:
|
||||
fqcn: 'middleware_automation/keycloak'
|
||||
molecule_tests: >-
|
||||
[ "default", "quarkus", "overridexml" ]
|
||||
[ "default", "quarkus", "overridexml", "quarkus-devmode" ]
|
||||
|
||||
3
.github/workflows/release.yml
vendored
3
.github/workflows/release.yml
vendored
@@ -6,9 +6,10 @@ on:
|
||||
jobs:
|
||||
release:
|
||||
uses: ansible-middleware/github-actions/.github/workflows/release.yml@main
|
||||
secrets: inherit
|
||||
with:
|
||||
collection_fqcn: 'middleware_automation.keycloak'
|
||||
secrets:
|
||||
galaxy_token: ${{ secrets.ANSIBLE_GALAXY_API_KEY }}
|
||||
|
||||
dispatch:
|
||||
needs: release
|
||||
|
||||
@@ -6,6 +6,26 @@ middleware_automation.keycloak Release Notes
|
||||
|
||||
This changelog describes changes after version 0.2.6.
|
||||
|
||||
v1.3.0
|
||||
======
|
||||
|
||||
Major Changes
|
||||
-------------
|
||||
|
||||
- Run service as ``keycloak_service_user`` `#106 <https://github.com/ansible-middleware/keycloak/pull/106>`_
|
||||
|
||||
Minor Changes
|
||||
-------------
|
||||
|
||||
- keycloak_quarkus: Update Keycloak to version 22.0.3 `#112 <https://github.com/ansible-middleware/keycloak/pull/112>`_
|
||||
- keycloak_quarkus: fix admin console redirect when running locally `#111 <https://github.com/ansible-middleware/keycloak/pull/111>`_
|
||||
- keycloak_quarkus: skip proxy config if ``keycloak_quarkus_proxy_mode`` is ``none`` `#109 <https://github.com/ansible-middleware/keycloak/pull/109>`_
|
||||
|
||||
Bugfixes
|
||||
--------
|
||||
|
||||
- keycloak_quarkus: fix validation failure upon port configuration change `#113 <https://github.com/ansible-middleware/keycloak/pull/113>`_
|
||||
|
||||
v1.2.8
|
||||
======
|
||||
|
||||
|
||||
@@ -286,3 +286,32 @@ releases:
|
||||
- 91.yaml
|
||||
- 98.yaml
|
||||
release_date: '2023-08-28'
|
||||
1.3.0:
|
||||
changes:
|
||||
bugfixes:
|
||||
- 'keycloak_quarkus: fix validation failure upon port configuration change `#113
|
||||
<https://github.com/ansible-middleware/keycloak/pull/113>`_
|
||||
|
||||
'
|
||||
major_changes:
|
||||
- 'Run service as ``keycloak_service_user`` `#106 <https://github.com/ansible-middleware/keycloak/pull/106>`_
|
||||
|
||||
'
|
||||
minor_changes:
|
||||
- 'keycloak_quarkus: Update Keycloak to version 22.0.3 `#112 <https://github.com/ansible-middleware/keycloak/pull/112>`_
|
||||
|
||||
'
|
||||
- 'keycloak_quarkus: fix admin console redirect when running locally `#111 <https://github.com/ansible-middleware/keycloak/pull/111>`_
|
||||
|
||||
'
|
||||
- 'keycloak_quarkus: skip proxy config if ``keycloak_quarkus_proxy_mode`` is
|
||||
``none`` `#109 <https://github.com/ansible-middleware/keycloak/pull/109>`_
|
||||
|
||||
'
|
||||
fragments:
|
||||
- 106.yaml
|
||||
- 109.yaml
|
||||
- 111.yaml
|
||||
- 112.yaml
|
||||
- 113.yaml
|
||||
release_date: '2023-09-25'
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
namespace: middleware_automation
|
||||
name: keycloak
|
||||
version: "1.2.8"
|
||||
version: "1.3.0"
|
||||
readme: README.md
|
||||
authors:
|
||||
- Romain Pelisse <rpelisse@redhat.com>
|
||||
|
||||
@@ -28,7 +28,6 @@ provisioner:
|
||||
ansible_python_interpreter: "{{ ansible_playbook_python }}"
|
||||
env:
|
||||
ANSIBLE_FORCE_COLOR: "true"
|
||||
ANSIBLE_VERBOSITY: 3
|
||||
verifier:
|
||||
name: ansible
|
||||
scenario:
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
keycloak_config_override_template: custom.xml.j2
|
||||
keycloak_http_port: 8081
|
||||
keycloak_management_http_port: 19990
|
||||
keycloak_service_runas: True
|
||||
roles:
|
||||
- role: keycloak
|
||||
tasks:
|
||||
@@ -51,4 +52,4 @@
|
||||
sso_offline_install: True
|
||||
when:
|
||||
- assets_server is defined
|
||||
- assets_server | length > 0
|
||||
- assets_server | length > 0
|
||||
|
||||
44
molecule/quarkus-devmode/converge.yml
Normal file
44
molecule/quarkus-devmode/converge.yml
Normal file
@@ -0,0 +1,44 @@
|
||||
---
|
||||
- name: Converge
|
||||
hosts: all
|
||||
vars:
|
||||
keycloak_quarkus_admin_pass: "remembertochangeme"
|
||||
keycloak_admin_password: "remembertochangeme"
|
||||
keycloak_realm: TestRealm
|
||||
keycloak_quarkus_http_relative_path: ''
|
||||
keycloak_quarkus_log: file
|
||||
keycloak_quarkus_frontend_url: 'http://localhost:8080/'
|
||||
keycloak_quarkus_start_dev: True
|
||||
keycloak_quarkus_proxy_mode: none
|
||||
roles:
|
||||
- role: keycloak_quarkus
|
||||
- role: keycloak_realm
|
||||
keycloak_context: ''
|
||||
keycloak_client_default_roles:
|
||||
- TestRoleAdmin
|
||||
- TestRoleUser
|
||||
keycloak_client_users:
|
||||
- username: TestUser
|
||||
password: password
|
||||
client_roles:
|
||||
- client: TestClient
|
||||
role: TestRoleUser
|
||||
realm: "{{ keycloak_realm }}"
|
||||
- username: TestAdmin
|
||||
password: password
|
||||
client_roles:
|
||||
- client: TestClient
|
||||
role: TestRoleUser
|
||||
realm: "{{ keycloak_realm }}"
|
||||
- client: TestClient
|
||||
role: TestRoleAdmin
|
||||
realm: "{{ keycloak_realm }}"
|
||||
keycloak_realm: TestRealm
|
||||
keycloak_clients:
|
||||
- name: TestClient
|
||||
roles: "{{ keycloak_client_default_roles }}"
|
||||
realm: "{{ keycloak_realm }}"
|
||||
public_client: "{{ keycloak_client_public }}"
|
||||
web_origins: "{{ keycloak_client_web_origins }}"
|
||||
users: "{{ keycloak_client_users }}"
|
||||
client_id: TestClient
|
||||
45
molecule/quarkus-devmode/molecule.yml
Normal file
45
molecule/quarkus-devmode/molecule.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
---
|
||||
driver:
|
||||
name: docker
|
||||
platforms:
|
||||
- name: instance
|
||||
image: registry.access.redhat.com/ubi8/ubi-init:latest
|
||||
pre_build_image: true
|
||||
privileged: true
|
||||
command: "/usr/sbin/init"
|
||||
port_bindings:
|
||||
- "8080/tcp"
|
||||
- "8009/tcp"
|
||||
published_ports:
|
||||
- 0.0.0.0:8080:8080/tcp
|
||||
provisioner:
|
||||
name: ansible
|
||||
config_options:
|
||||
defaults:
|
||||
interpreter_python: auto_silent
|
||||
ssh_connection:
|
||||
pipelining: false
|
||||
playbooks:
|
||||
prepare: prepare.yml
|
||||
converge: converge.yml
|
||||
verify: verify.yml
|
||||
inventory:
|
||||
host_vars:
|
||||
localhost:
|
||||
ansible_python_interpreter: "{{ ansible_playbook_python }}"
|
||||
env:
|
||||
ANSIBLE_FORCE_COLOR: "true"
|
||||
verifier:
|
||||
name: ansible
|
||||
scenario:
|
||||
test_sequence:
|
||||
- cleanup
|
||||
- destroy
|
||||
- create
|
||||
- prepare
|
||||
- converge
|
||||
- idempotence
|
||||
- side_effect
|
||||
- verify
|
||||
- cleanup
|
||||
- destroy
|
||||
12
molecule/quarkus-devmode/prepare.yml
Normal file
12
molecule/quarkus-devmode/prepare.yml
Normal file
@@ -0,0 +1,12 @@
|
||||
---
|
||||
- name: Prepare
|
||||
hosts: all
|
||||
tasks:
|
||||
- name: Install sudo
|
||||
ansible.builtin.yum:
|
||||
name: sudo
|
||||
state: present
|
||||
|
||||
- name: "Display hera_home if defined."
|
||||
ansible.builtin.set_fact:
|
||||
hera_home: "{{ lookup('env', 'HERA_HOME') }}"
|
||||
1
molecule/quarkus-devmode/roles
Symbolic link
1
molecule/quarkus-devmode/roles
Symbolic link
@@ -0,0 +1 @@
|
||||
../../roles
|
||||
39
molecule/quarkus-devmode/verify.yml
Normal file
39
molecule/quarkus-devmode/verify.yml
Normal file
@@ -0,0 +1,39 @@
|
||||
---
|
||||
- name: Verify
|
||||
hosts: all
|
||||
tasks:
|
||||
- name: Populate service facts
|
||||
ansible.builtin.service_facts:
|
||||
|
||||
- name: Check if keycloak service started
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- ansible_facts.services["keycloak.service"]["state"] == "running"
|
||||
- ansible_facts.services["keycloak.service"]["status"] == "enabled"
|
||||
|
||||
- name: Set internal envvar
|
||||
ansible.builtin.set_fact:
|
||||
hera_home: "{{ lookup('env', 'HERA_HOME') }}"
|
||||
|
||||
- name: Verify openid config
|
||||
block:
|
||||
- name: Fetch openID config # noqa blocked_modules command-instead-of-module
|
||||
ansible.builtin.shell: |
|
||||
set -o pipefail
|
||||
curl http://localhost:8080/realms/master/.well-known/openid-configuration -k | jq .
|
||||
args:
|
||||
executable: /bin/bash
|
||||
delegate_to: localhost
|
||||
register: openid_config
|
||||
changed_when: False
|
||||
- name: Verify endpoint URLs
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- (openid_config.stdout | from_json)["backchannel_authentication_endpoint"] == 'http://localhost:8080/realms/master/protocol/openid-connect/ext/ciba/auth'
|
||||
- (openid_config.stdout | from_json)['issuer'] == 'http://localhost:8080/realms/master'
|
||||
- (openid_config.stdout | from_json)['authorization_endpoint'] == 'http://localhost:8080/realms/master/protocol/openid-connect/auth'
|
||||
- (openid_config.stdout | from_json)['token_endpoint'] == 'http://localhost:8080/realms/master/protocol/openid-connect/token'
|
||||
delegate_to: localhost
|
||||
when:
|
||||
- hera_home is defined
|
||||
- hera_home | length == 0
|
||||
@@ -30,13 +30,13 @@
|
||||
- name: Create conf directory # risky-file-permissions in test user account does not exist yet
|
||||
ansible.builtin.file:
|
||||
state: directory
|
||||
path: /opt/keycloak/keycloak-22.0.1/conf/
|
||||
path: /opt/keycloak/keycloak-22.0.3/conf/
|
||||
mode: 0755
|
||||
|
||||
- name: Copy certificates
|
||||
ansible.builtin.copy:
|
||||
src: "{{ item }}"
|
||||
dest: "/opt/keycloak/keycloak-22.0.1/conf/{{ item }}"
|
||||
dest: "/opt/keycloak/keycloak-22.0.3/conf/{{ item }}"
|
||||
mode: 0444
|
||||
loop:
|
||||
- cert.pem
|
||||
|
||||
@@ -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
|
||||
|
||||
13
playbooks/keycloak_quarkus_dev.yml
Normal file
13
playbooks/keycloak_quarkus_dev.yml
Normal file
@@ -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
|
||||
@@ -77,7 +77,7 @@ Role Defaults
|
||||
|`keycloak_service_startlimitintervalsec`| systemd StartLimitIntervalSec | `300` |
|
||||
|`keycloak_service_startlimitburst`| systemd StartLimitBurst | `5` |
|
||||
|`keycloak_service_restartsec`| systemd RestartSec | `10s` |
|
||||
|`keycloak_service_pidfile`| pid file path for service | `/run/keycloak.pid` |
|
||||
|`keycloak_service_pidfile`| pid file path for service | `/run/keycloak/keycloak.pid` |
|
||||
|`keycloak_features` | List of `name`/`status` pairs of features (also known as profiles on RH-SSO) to `enable` or `disable`, example: `[ { name: 'docker', status: 'enabled' } ]` | `[]`
|
||||
|`keycloak_jvm_package`| RHEL java package runtime | `java-1.8.0-openjdk-headless` |
|
||||
|`keycloak_java_home`| JAVA_HOME of installed JRE, leave empty for using specified keycloak_jvm_package RPM path | `None` |
|
||||
|
||||
@@ -17,9 +17,10 @@ keycloak_config_standalone_xml: "keycloak.xml"
|
||||
keycloak_config_path_to_standalone_xml: "{{ keycloak_jboss_home }}/standalone/configuration/{{ keycloak_config_standalone_xml }}"
|
||||
keycloak_config_override_template: ''
|
||||
keycloak_config_path_to_properties: "{{ keycloak_jboss_home }}/standalone/configuration/profile.properties"
|
||||
keycloak_service_runas: false
|
||||
keycloak_service_user: keycloak
|
||||
keycloak_service_group: keycloak
|
||||
keycloak_service_pidfile: "/run/keycloak.pid"
|
||||
keycloak_service_pidfile: "/run/keycloak/keycloak.pid"
|
||||
keycloak_service_name: keycloak
|
||||
keycloak_service_desc: Keycloak
|
||||
keycloak_service_start_delay: 10
|
||||
|
||||
@@ -74,6 +74,11 @@ argument_specs:
|
||||
default: ""
|
||||
description: "Path to custom template for standalone.xml configuration"
|
||||
type: "str"
|
||||
keycloak_service_runas:
|
||||
# line 20 of keycloak/defaults/main.yml
|
||||
default: false
|
||||
description: "Enable execution of service as `keycloak_service_user`"
|
||||
type: "bool"
|
||||
keycloak_service_user:
|
||||
# line 29 of keycloak/defaults/main.yml
|
||||
default: "keycloak"
|
||||
@@ -86,7 +91,7 @@ argument_specs:
|
||||
type: "str"
|
||||
keycloak_service_pidfile:
|
||||
# line 31 of keycloak/defaults/main.yml
|
||||
default: "/run/keycloak.pid"
|
||||
default: "/run/keycloak/keycloak.pid"
|
||||
description: "PID file path for service"
|
||||
type: "str"
|
||||
keycloak_features:
|
||||
|
||||
@@ -53,6 +53,15 @@
|
||||
group: "{{ keycloak_service_group }}"
|
||||
mode: 0750
|
||||
|
||||
- name: Create pidfile folder
|
||||
become: yes
|
||||
ansible.builtin.file:
|
||||
dest: "{{ keycloak_service_pidfile | dirname }}"
|
||||
state: directory
|
||||
owner: "{{ keycloak_service_user if keycloak_service_runas else omit }}"
|
||||
group: "{{ keycloak_service_group if keycloak_service_runas else omit }}"
|
||||
mode: 0750
|
||||
|
||||
## check remote archive
|
||||
- name: Set download archive path
|
||||
ansible.builtin.set_fact:
|
||||
@@ -194,6 +203,12 @@
|
||||
become: yes
|
||||
changed_when: false
|
||||
|
||||
- name: Ensure permissions are correct on existing deploy
|
||||
ansible.builtin.command: chown -R "{{ keycloak_service_user }}:{{ keycloak_service_group }}" "{{ keycloak.home }}"
|
||||
when: keycloak_service_runas
|
||||
become: yes
|
||||
changed_when: false
|
||||
|
||||
# driver and configuration
|
||||
- name: "Install {{ keycloak_jdbc_engine }} driver"
|
||||
ansible.builtin.include_tasks: jdbc_driver.yml
|
||||
|
||||
@@ -8,4 +8,12 @@ KEYCLOAK_HTTPS_PORT={{ keycloak_https_port }}
|
||||
KEYCLOAK_MANAGEMENT_HTTP_PORT={{ keycloak_management_http_port }}
|
||||
KEYCLOAK_MANAGEMENT_HTTPS_PORT={{ keycloak_management_https_port }}
|
||||
JBOSS_PIDFILE='{{ keycloak_service_pidfile }}'
|
||||
LAUNCH_JBOSS_IN_BACKGROUND=1
|
||||
|
||||
WILDFLY_OPTS=-Djboss.bind.address=${KEYCLOAK_BIND_ADDRESS} \
|
||||
-Djboss.http.port=${KEYCLOAK_HTTP_PORT} \
|
||||
-Djboss.https.port=${KEYCLOAK_HTTPS_PORT} \
|
||||
-Djboss.management.http.port=${KEYCLOAK_MANAGEMENT_HTTP_PORT} \
|
||||
-Djboss.management.https.port=${KEYCLOAK_MANAGEMENT_HTTPS_PORT} \
|
||||
-Djboss.node.name={{ inventory_hostname }} \
|
||||
{% if keycloak_prefer_ipv4 %}-Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses=true {% endif %}\
|
||||
{% if keycloak_config_standalone_xml is defined %}--server-config={{ keycloak_config_standalone_xml }}{% endif %}
|
||||
|
||||
@@ -7,11 +7,14 @@ StartLimitBurst={{ keycloak_service_startlimitburst }}
|
||||
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
{% if keycloak_service_runas %}
|
||||
User={{ keycloak_service_user }}
|
||||
Group={{ keycloak_service_group }}
|
||||
{% endif -%}
|
||||
EnvironmentFile=-/etc/sysconfig/keycloak
|
||||
PIDFile={{ keycloak_service_pidfile }}
|
||||
ExecStart={{ keycloak_dest }}/keycloak-service.sh start
|
||||
ExecStop={{ keycloak_dest }}/keycloak-service.sh stop
|
||||
ExecStart={{ keycloak.home }}/bin/standalone.sh $WILDFLY_OPTS
|
||||
WorkingDirectory={{ keycloak.home }}
|
||||
TimeoutStartSec=30
|
||||
TimeoutStopSec=30
|
||||
LimitNOFILE=102642
|
||||
|
||||
@@ -11,7 +11,7 @@ Role Defaults
|
||||
|
||||
| Variable | Description | Default |
|
||||
|:---------|:------------|:--------|
|
||||
|`keycloak_quarkus_version`| keycloak.org package version | `22.0.1` |
|
||||
|`keycloak_quarkus_version`| keycloak.org package version | `22.0.3` |
|
||||
|
||||
|
||||
* Service configuration
|
||||
@@ -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 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` |
|
||||
|`keycloak_quarkus_jgroups_port`| jgroups cluster tcp port | `7600` |
|
||||
|`keycloak_quarkus_service_user`| Posix account username | `keycloak` |
|
||||
@@ -71,7 +72,7 @@ Role Defaults
|
||||
|:---------|:------------|:---------|
|
||||
|`keycloak_quarkus_offline_install` | Perform an offline install | `False`|
|
||||
|`keycloak_quarkus_download_url`| Download URL for keycloak | `https://github.com/keycloak/keycloak/releases/download/<version>/<archive>`|
|
||||
|`keycloak_quarkus_version`| keycloak.org package version | `22.0.1` |
|
||||
|`keycloak_quarkus_version`| keycloak.org package version | `22.0.3` |
|
||||
|`keycloak_quarkus_dest`| Installation root path | `/opt/keycloak` |
|
||||
|`keycloak_quarkus_download_url` | Download URL for keycloak | `https://github.com/keycloak/keycloak/releases/download/{{ keycloak_quarkus_version }}/{{ keycloak_quarkus_archive }}` |
|
||||
|`keycloak_quarkus_configure_firewalld` | Ensure firewalld is running and configure keycloak ports | `False` |
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
### Configuration specific to keycloak
|
||||
keycloak_quarkus_version: 22.0.1
|
||||
keycloak_quarkus_version: 22.0.3
|
||||
keycloak_quarkus_archive: "keycloak-{{ keycloak_quarkus_version }}.zip"
|
||||
keycloak_quarkus_download_url: "https://github.com/keycloak/keycloak/releases/download/{{ keycloak_quarkus_version }}/{{ keycloak_quarkus_archive }}"
|
||||
keycloak_quarkus_installdir: "{{ keycloak_quarkus_dest }}/keycloak-{{ keycloak_quarkus_version }}"
|
||||
@@ -17,7 +17,7 @@ keycloak_quarkus_config_dir: "{{ keycloak_quarkus_home }}/conf"
|
||||
keycloak_quarkus_start_dev: False
|
||||
keycloak_quarkus_service_user: keycloak
|
||||
keycloak_quarkus_service_group: keycloak
|
||||
keycloak_quarkus_service_pidfile: "/run/keycloak.pid"
|
||||
keycloak_quarkus_service_pidfile: "/run/keycloak/keycloak.pid"
|
||||
keycloak_quarkus_configure_firewalld: False
|
||||
|
||||
### administrator console password
|
||||
@@ -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: -1
|
||||
keycloak_quarkus_http_enabled: True
|
||||
keycloak_quarkus_http_port: 8080
|
||||
keycloak_quarkus_https_port: 8443
|
||||
@@ -49,7 +50,7 @@ keycloak_quarkus_db_enabled: "{{ True if keycloak_quarkus_ha_enabled else False
|
||||
keycloak_quarkus_http_relative_path: auth
|
||||
keycloak_quarkus_frontend_url: http://localhost:8080/auth
|
||||
|
||||
# proxy address forwarding mode if the server is behind a reverse proxy. [edge, reencrypt, passthrough]
|
||||
# proxy address forwarding mode if the server is behind a reverse proxy. [none, edge, reencrypt, passthrough]
|
||||
keycloak_quarkus_proxy_mode: edge
|
||||
|
||||
# disable xa transactions
|
||||
|
||||
@@ -61,7 +61,7 @@ argument_specs:
|
||||
type: "str"
|
||||
keycloak_quarkus_service_pidfile:
|
||||
# line 18 of defaults/main.yml
|
||||
default: "/run/keycloak.pid"
|
||||
default: "/run/keycloak/keycloak.pid"
|
||||
description: "Pid file path for service"
|
||||
type: "str"
|
||||
keycloak_quarkus_configure_firewalld:
|
||||
@@ -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 for the Keycloak server"
|
||||
type: "str"
|
||||
keycloak_quarkus_port:
|
||||
default: -1
|
||||
description: "The port used by the proxy when exposing the hostname"
|
||||
type: "int"
|
||||
keycloak_quarkus_http_enabled:
|
||||
default: true
|
||||
description: "Enable listener on HTTP port"
|
||||
@@ -243,7 +246,7 @@ argument_specs:
|
||||
keycloak_quarkus_proxy_mode:
|
||||
default: 'edge'
|
||||
type: "str"
|
||||
description: "The proxy address forwarding mode if the server is behind a reverse proxy"
|
||||
description: "The proxy address forwarding mode if the server is behind a reverse proxy. Set to 'none' if not using a proxy"
|
||||
keycloak_quarkus_start_dev:
|
||||
default: False
|
||||
type: "bool"
|
||||
|
||||
@@ -52,6 +52,9 @@
|
||||
mode: 0775
|
||||
become: yes
|
||||
|
||||
- name: Flush pending handlers
|
||||
ansible.builtin.meta: flush_handlers
|
||||
|
||||
- name: "Start and wait for keycloak service"
|
||||
ansible.builtin.include_tasks: start.yml
|
||||
|
||||
|
||||
@@ -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
|
||||
@@ -34,8 +35,10 @@ cache-config-file=cache-ispn.xml
|
||||
cache-stack=tcp
|
||||
{% endif %}
|
||||
|
||||
{% if keycloak_quarkus_proxy_mode is defined and keycloak_quarkus_proxy_mode != "none" %}
|
||||
# Proxy
|
||||
proxy={{ keycloak_quarkus_proxy_mode }}
|
||||
{% endif %}
|
||||
# Do not attach route to cookies and rely on the session affinity capabilities from reverse proxy
|
||||
#spi-sticky-session-encoder-infinispan-should-attach-route=false
|
||||
|
||||
|
||||
Reference in New Issue
Block a user