Merge pull request #366 from RanabirChakraborty/AMW-592

AMW-592 AMW Github Actions are failing because of latest molecule
This commit is contained in:
Harsha Cherukuri
2026-07-20 15:38:03 -04:00
committed by GitHub
27 changed files with 63 additions and 42 deletions

View File

@@ -6,7 +6,7 @@ platforms:
image: ghcr.io/hspaans/molecule-containers:debian-13 image: ghcr.io/hspaans/molecule-containers:debian-13
pre_build_image: true pre_build_image: true
privileged: true privileged: true
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
- "8443/tcp" - "8443/tcp"
- "8009/tcp" - "8009/tcp"

View File

@@ -7,7 +7,7 @@ platforms:
pre_build_image: true pre_build_image: true
privileged: true privileged: true
command: "/usr/sbin/init" command: "/usr/sbin/init"
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
- "8443/tcp" - "8443/tcp"
- "8009/tcp" - "8009/tcp"

View File

@@ -1,4 +1,9 @@
--- ---
keycloak_download_validate_certs: false
keycloak_validate_certs: false
keycloak_quarkus_download_validate_certs: false
keycloak_quarkus_validate_certs: false
keycloak_realm_validate_certs: false
keycloak_quarkus_require_privilege_escalation: "{{ keycloak_install_requires_become | default(true) }}" keycloak_quarkus_require_privilege_escalation: "{{ keycloak_install_requires_become | default(true) }}"
keycloak_quarkus_systemd_require_privilege_escalation: "{{ keycloak_install_requires_become | default(true) }}" keycloak_quarkus_systemd_require_privilege_escalation: "{{ keycloak_install_requires_become | default(true) }}"
keycloak_quarkus_install_require_privilege_escalation: "{{ keycloak_install_requires_become | default(true) }}" keycloak_quarkus_install_require_privilege_escalation: "{{ keycloak_install_requires_become | default(true) }}"

View File

@@ -9,7 +9,7 @@ platforms:
command: "/usr/sbin/init" command: "/usr/sbin/init"
networks: networks:
- name: keycloak - name: keycloak
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
published_ports: published_ports:
- 0.0.0.0:8080:8080/tcp - 0.0.0.0:8080:8080/tcp
@@ -20,7 +20,7 @@ platforms:
command: "/usr/sbin/init" command: "/usr/sbin/init"
networks: networks:
- name: keycloak - name: keycloak
port_bindings: exposed_ports:
- "443/tcp" - "443/tcp"
published_ports: published_ports:
- 0.0.0.0:443:443/tcp - 0.0.0.0:443:443/tcp

View File

@@ -7,7 +7,7 @@ platforms:
pre_build_image: true pre_build_image: true
privileged: true privileged: true
command: "/usr/sbin/init" command: "/usr/sbin/init"
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
- "8443/tcp" - "8443/tcp"
- "8009/tcp" - "8009/tcp"

View File

@@ -90,6 +90,7 @@
auth_realm: "{{ auth_realm }}" auth_realm: "{{ auth_realm }}"
auth_username: "{{ auth_username }}" auth_username: "{{ auth_username }}"
auth_password: "{{ auth_password }}" auth_password: "{{ auth_password }}"
validate_certs: false
block: block:
- name: Reset fixtures from a previous verify run - name: Reset fixtures from a previous verify run
middleware_automation.keycloak.keycloak_user: middleware_automation.keycloak.keycloak_user:
@@ -168,6 +169,7 @@
middleware_automation.keycloak.keycloak_realm_info: middleware_automation.keycloak.keycloak_realm_info:
auth_keycloak_url: "{{ auth_keycloak_url }}" auth_keycloak_url: "{{ auth_keycloak_url }}"
realm: "{{ target_realm }}" realm: "{{ target_realm }}"
validate_certs: false
- name: Exercise migrated modules against running Keycloak - name: Exercise migrated modules against running Keycloak
module_defaults: module_defaults:
@@ -176,6 +178,7 @@
auth_realm: "{{ auth_realm }}" auth_realm: "{{ auth_realm }}"
auth_username: "{{ auth_username }}" auth_username: "{{ auth_username }}"
auth_password: "{{ auth_password }}" auth_password: "{{ auth_password }}"
validate_certs: false
block: block:
- name: keycloak_realm_keys_metadata_info — query realm keys - name: keycloak_realm_keys_metadata_info — query realm keys
middleware_automation.keycloak.keycloak_realm_keys_metadata_info: middleware_automation.keycloak.keycloak_realm_keys_metadata_info:
@@ -536,6 +539,7 @@
auth_realm: "{{ auth_realm }}" auth_realm: "{{ auth_realm }}"
auth_username: "{{ auth_username }}" auth_username: "{{ auth_username }}"
auth_password: "{{ auth_password }}" auth_password: "{{ auth_password }}"
validate_certs: false
block: block:
- name: keycloak_authz_custom_policy — remove custom policy if created - name: keycloak_authz_custom_policy — remove custom policy if created
middleware_automation.keycloak.keycloak_authz_custom_policy: middleware_automation.keycloak.keycloak_authz_custom_policy:

View File

@@ -7,7 +7,7 @@ platforms:
pre_build_image: true pre_build_image: true
privileged: true privileged: true
command: "/usr/sbin/init" command: "/usr/sbin/init"
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
- "8443/tcp" - "8443/tcp"
- "8009/tcp" - "8009/tcp"

View File

@@ -7,7 +7,7 @@ platforms:
pre_build_image: true pre_build_image: true
privileged: true privileged: true
command: "/usr/sbin/init" command: "/usr/sbin/init"
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
- "8443/tcp" - "8443/tcp"
- "8009/tcp" - "8009/tcp"

View File

@@ -7,7 +7,7 @@ platforms:
pre_build_image: true pre_build_image: true
privileged: true privileged: true
command: "/usr/sbin/init" command: "/usr/sbin/init"
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
- "8009/tcp" - "8009/tcp"
- "9000/tcp" - "9000/tcp"

View File

@@ -11,7 +11,7 @@ platforms:
- keycloak - keycloak
networks: networks:
- name: rhbk - name: rhbk
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
- "8443/tcp" - "8443/tcp"
- "9000/tcp" - "9000/tcp"
@@ -24,7 +24,7 @@ platforms:
- keycloak - keycloak
networks: networks:
- name: rhbk - name: rhbk
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
- "8443/tcp" - "8443/tcp"
- "9000/tcp" - "9000/tcp"
@@ -37,7 +37,7 @@ platforms:
- database - database
networks: networks:
- name: rhbk - name: rhbk
port_bindings: exposed_ports:
- "5432/tcp" - "5432/tcp"
mounts: mounts:
- type: bind - type: bind

View File

@@ -11,7 +11,7 @@ platforms:
- keycloak - keycloak
networks: networks:
- name: rhbk - name: rhbk
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
- "8443/tcp" - "8443/tcp"
- "9000/tcp" - "9000/tcp"
@@ -24,7 +24,7 @@ platforms:
- keycloak - keycloak
networks: networks:
- name: rhbk - name: rhbk
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
- "8443/tcp" - "8443/tcp"
- "9000/tcp" - "9000/tcp"
@@ -37,7 +37,7 @@ platforms:
- database - database
networks: networks:
- name: rhbk - name: rhbk
port_bindings: exposed_ports:
- "5432/tcp" - "5432/tcp"
mounts: mounts:
- type: bind - type: bind

View File

@@ -11,7 +11,7 @@ platforms:
- keycloak - keycloak
networks: networks:
- name: rhbk - name: rhbk
port_bindings: exposed_ports:
- "8080/tcp" - "8080/tcp"
- "8443/tcp" - "8443/tcp"
- "9000/tcp" - "9000/tcp"
@@ -24,7 +24,7 @@ platforms:
- infinispan - infinispan
networks: networks:
- name: rhbk - name: rhbk
port_bindings: exposed_ports:
- "11222/tcp" - "11222/tcp"
- name: postgres - name: postgres
image: ubuntu/postgres:14-22.04_beta image: ubuntu/postgres:14-22.04_beta
@@ -35,7 +35,7 @@ platforms:
- database - database
networks: networks:
- name: rhbk - name: rhbk
port_bindings: exposed_ports:
- "5432/tcp" - "5432/tcp"
mounts: mounts:
- type: bind - type: bind

View File

@@ -11,8 +11,8 @@ platforms:
command: "/usr/sbin/init" command: "/usr/sbin/init"
pre_build_image: true pre_build_image: true
privileged: true privileged: true
port_bindings: exposed_ports:
- 8080:8080 - "8080/tcp"
- "9000/tcp" - "9000/tcp"
published_ports: published_ports:
- 0.0.0.0:8080:8080/TCP - 0.0.0.0:8080:8080/TCP

View File

@@ -87,7 +87,7 @@
mode: '0644' mode: '0644'
url_username: "{{ keycloak_binary_download_user | default(omit) }}" url_username: "{{ keycloak_binary_download_user | default(omit) }}"
url_password: "{{ keycloak_binary_download_pass | default(omit) }}" url_password: "{{ keycloak_binary_download_pass | default(omit) }}"
validate_certs: false validate_certs: "{{ keycloak_download_validate_certs | default(omit) }}"
delegate_to: localhost delegate_to: localhost
run_once: true run_once: true
when: when:
@@ -114,7 +114,7 @@
product_type: DISTRIBUTION product_type: DISTRIBUTION
product_version: "{{ sso_version.split('.')[:2] | join('.') }}" product_version: "{{ sso_version.split('.')[:2] | join('.') }}"
product_category: "{{ sso_product_category }}" product_category: "{{ sso_product_category }}"
validate_certs: false validate_certs: "{{ keycloak_download_validate_certs | default(omit) }}"
register: keycloak_rhn_products register: keycloak_rhn_products
no_log: "{{ omit_rhn_output | default(true) }}" no_log: "{{ omit_rhn_output | default(true) }}"
delegate_to: localhost delegate_to: localhost
@@ -135,7 +135,7 @@
client_secret: "{{ rhn_password }}" client_secret: "{{ rhn_password }}"
product_id: "{{ (keycloak_rhn_filtered_products | first).id }}" product_id: "{{ (keycloak_rhn_filtered_products | first).id }}"
dest: "{{ keycloak_local_path.stat.path }}/{{ keycloak_archive }}" dest: "{{ keycloak_local_path.stat.path }}/{{ keycloak_archive }}"
validate_certs: false validate_certs: "{{ keycloak_download_validate_certs | default(omit) }}"
no_log: "{{ omit_rhn_output | default(true) }}" no_log: "{{ omit_rhn_output | default(true) }}"
delegate_to: localhost delegate_to: localhost
run_once: true run_once: true
@@ -145,7 +145,7 @@
url: "{{ keycloak_rhsso_download_url }}" url: "{{ keycloak_rhsso_download_url }}"
dest: "{{ keycloak_local_path.stat.path }}/{{ keycloak_archive }}" dest: "{{ keycloak_local_path.stat.path }}/{{ keycloak_archive }}"
mode: '0644' mode: '0644'
validate_certs: false validate_certs: "{{ keycloak_download_validate_certs | default(omit) }}"
delegate_to: localhost delegate_to: localhost
run_once: true run_once: true
when: when:

View File

@@ -60,7 +60,7 @@
url: "{{ keycloak_url }}/auth/realms/master/protocol/openid-connect/token" url: "{{ keycloak_url }}/auth/realms/master/protocol/openid-connect/token"
method: POST method: POST
body: "client_id={{ keycloak_auth_client }}&username={{ keycloak_admin_user }}&password={{ keycloak_admin_password }}&grant_type=password" body: "client_id={{ keycloak_auth_client }}&username={{ keycloak_admin_user }}&password={{ keycloak_admin_password }}&grant_type=password"
validate_certs: false validate_certs: "{{ keycloak_validate_certs | default(omit) }}"
register: keycloak_auth_response register: keycloak_auth_response
until: keycloak_auth_response.status == 200 until: keycloak_auth_response.status == 200
retries: 2 retries: 2
@@ -81,6 +81,7 @@
- name: "Wait until service becomes active: {{ keycloak_config.service_name }}" - name: "Wait until service becomes active: {{ keycloak_config.service_name }}"
ansible.builtin.uri: ansible.builtin.uri:
url: "{{ keycloak_config.health_url }}" url: "{{ keycloak_config.health_url }}"
validate_certs: "{{ keycloak_validate_certs | default(omit) }}"
register: keycloak_status register: keycloak_status
until: keycloak_status.status == 200 until: keycloak_status.status == 200
retries: 25 retries: 25

View File

@@ -12,6 +12,7 @@
- name: "Wait until service becomes active: {{ keycloak_config.service_name }}" - name: "Wait until service becomes active: {{ keycloak_config.service_name }}"
ansible.builtin.uri: ansible.builtin.uri:
url: "{{ keycloak_config.health_url }}" url: "{{ keycloak_config.health_url }}"
validate_certs: "{{ keycloak_validate_certs | default(omit) }}"
register: keycloak_status register: keycloak_status
until: keycloak_status.status == 200 until: keycloak_status.status == 200
delegate_to: "{{ ansible_play_hosts | first }}" delegate_to: "{{ ansible_play_hosts | first }}"

View File

@@ -29,7 +29,7 @@
product_type: BUGFIX product_type: BUGFIX
product_version: "{{ sso_version.split('.')[:2] | join('.') }}" product_version: "{{ sso_version.split('.')[:2] | join('.') }}"
product_category: "{{ sso_product_category }}" product_category: "{{ sso_product_category }}"
validate_certs: false validate_certs: "{{ keycloak_download_validate_certs | default(omit) }}"
register: keycloak_rhn_products register: keycloak_rhn_products
no_log: "{{ omit_rhn_output | default(true) }}" no_log: "{{ omit_rhn_output | default(true) }}"
delegate_to: localhost delegate_to: localhost
@@ -75,7 +75,7 @@
client_secret: "{{ rhn_password }}" client_secret: "{{ rhn_password }}"
product_id: "{{ (keycloak_rhn_filtered_products | sort | last).id }}" product_id: "{{ (keycloak_rhn_filtered_products | sort | last).id }}"
dest: "{{ keycloak_local_path.stat.path }}/{{ keycloak_patch_bundle }}" dest: "{{ keycloak_local_path.stat.path }}/{{ keycloak_patch_bundle }}"
validate_certs: false validate_certs: "{{ keycloak_download_validate_certs | default(omit) }}"
no_log: "{{ omit_rhn_output | default(true) }}" no_log: "{{ omit_rhn_output | default(true) }}"
delegate_to: localhost delegate_to: localhost
run_once: true run_once: true
@@ -143,6 +143,7 @@
- name: "Wait until service becomes active: {{ keycloak_config.service_name }}" - name: "Wait until service becomes active: {{ keycloak_config.service_name }}"
ansible.builtin.uri: ansible.builtin.uri:
url: "{{ keycloak_config.health_url }}" url: "{{ keycloak_config.health_url }}"
validate_certs: "{{ keycloak_validate_certs | default(omit) }}"
register: keycloak_status register: keycloak_status
until: keycloak_status.status == 200 until: keycloak_status.status == 200
retries: 25 retries: 25

View File

@@ -10,6 +10,7 @@
- name: "Wait until service becomes active: {{ keycloak_config.service_name }}" - name: "Wait until service becomes active: {{ keycloak_config.service_name }}"
ansible.builtin.uri: ansible.builtin.uri:
url: "{{ keycloak_config.health_url }}" url: "{{ keycloak_config.health_url }}"
validate_certs: "{{ keycloak_validate_certs | default(omit) }}"
register: keycloak_status register: keycloak_status
until: keycloak_status.status == 200 until: keycloak_status.status == 200
retries: "{{ keycloak_service_start_retries }}" retries: "{{ keycloak_service_start_retries }}"

View File

@@ -81,7 +81,7 @@
mode: '0640' mode: '0640'
url_username: "{{ keycloak_quarkus_binary_download_user | default(omit) }}" url_username: "{{ keycloak_quarkus_binary_download_user | default(omit) }}"
url_password: "{{ keycloak_quarkus_binary_download_pass | default(omit) }}" url_password: "{{ keycloak_quarkus_binary_download_pass | default(omit) }}"
validate_certs: false validate_certs: "{{ keycloak_quarkus_download_validate_certs | default(omit) }}"
delegate_to: localhost delegate_to: localhost
become: false become: false
run_once: true run_once: true
@@ -110,7 +110,7 @@
product_type: DISTRIBUTION product_type: DISTRIBUTION
product_version: "{{ rhbk_version }}" product_version: "{{ rhbk_version }}"
product_category: "{{ rhbk_product_category }}" product_category: "{{ rhbk_product_category }}"
validate_certs: false validate_certs: "{{ keycloak_quarkus_download_validate_certs | default(omit) }}"
register: keycloak_quarkus_rhn_products register: keycloak_quarkus_rhn_products
no_log: "{{ omit_rhn_output | default(true) }}" no_log: "{{ omit_rhn_output | default(true) }}"
delegate_to: localhost delegate_to: localhost
@@ -129,7 +129,7 @@
product_id: "{{ (keycloak_quarkus_rhn_filtered_products | first).id }}" product_id: "{{ (keycloak_quarkus_rhn_filtered_products | first).id }}"
dest: "{{ keycloak_quarkus_local_path.stat.path }}/{{ keycloak.bundle }}" dest: "{{ keycloak_quarkus_local_path.stat.path }}/{{ keycloak.bundle }}"
mode: '0640' mode: '0640'
validate_certs: false validate_certs: "{{ keycloak_quarkus_download_validate_certs | default(omit) }}"
no_log: "{{ omit_rhn_output | default(true) }}" no_log: "{{ omit_rhn_output | default(true) }}"
delegate_to: localhost delegate_to: localhost
run_once: true run_once: true
@@ -243,6 +243,7 @@
group: "{{ keycloak.service_group }}" group: "{{ keycloak.service_group }}"
mode: '0640' mode: '0640'
checksum: "{{ item.checksum | default(omit) }}" checksum: "{{ item.checksum | default(omit) }}"
validate_certs: "{{ keycloak_quarkus_download_validate_certs | default(omit) }}"
become: "{{ keycloak_quarkus_install_require_privilege_escalation | default(true) }}" become: "{{ keycloak_quarkus_install_require_privilege_escalation | default(true) }}"
loop: "{{ keycloak_quarkus_providers }}" loop: "{{ keycloak_quarkus_providers }}"
when: item.url is defined and item.url | length > 0 when: item.url is defined and item.url | length > 0
@@ -259,6 +260,7 @@
username: "{{ item.maven.username | default(omit) }}" username: "{{ item.maven.username | default(omit) }}"
password: "{{ item.maven.password | default(omit) }}" password: "{{ item.maven.password | default(omit) }}"
dest: "{{ keycloak_quarkus_local_path.stat.path }}/{{ item.id }}.jar" dest: "{{ keycloak_quarkus_local_path.stat.path }}/{{ item.id }}.jar"
validate_certs: "{{ keycloak_quarkus_download_validate_certs | default(omit) }}"
delegate_to: "localhost" delegate_to: "localhost"
run_once: true run_once: true
loop: "{{ keycloak_quarkus_providers }}" loop: "{{ keycloak_quarkus_providers }}"
@@ -310,6 +312,7 @@
owner: "{{ keycloak.service_user }}" owner: "{{ keycloak.service_user }}"
group: "{{ keycloak.service_group }}" group: "{{ keycloak.service_group }}"
mode: '0640' mode: '0640'
validate_certs: "{{ keycloak_quarkus_download_validate_certs | default(omit) }}"
become: "{{ keycloak_quarkus_install_require_privilege_escalation | default(true) }}" become: "{{ keycloak_quarkus_install_require_privilege_escalation | default(true) }}"
loop: "{{ keycloak_quarkus_policies }}" loop: "{{ keycloak_quarkus_policies }}"
when: item.url is defined and item.url | length > 0 when: item.url is defined and item.url | length > 0

View File

@@ -10,6 +10,7 @@
- name: "Wait until service becomes active: {{ keycloak.service_name }}" - name: "Wait until service becomes active: {{ keycloak.service_name }}"
ansible.builtin.uri: ansible.builtin.uri:
url: "{{ keycloak.health_url }}" url: "{{ keycloak.health_url }}"
validate_certs: "{{ keycloak_quarkus_validate_certs | default(omit) }}"
register: keycloak_quarkus_status register: keycloak_quarkus_status
until: keycloak_quarkus_status.status == 200 until: keycloak_quarkus_status.status == 200
retries: "{{ keycloak_quarkus_restart_health_check_retries }}" retries: "{{ keycloak_quarkus_restart_health_check_retries }}"

View File

@@ -10,6 +10,7 @@
- name: "Wait until service becomes active: {{ keycloak.service_name }}" - name: "Wait until service becomes active: {{ keycloak.service_name }}"
ansible.builtin.uri: ansible.builtin.uri:
url: "{{ keycloak.health_url }}" url: "{{ keycloak.health_url }}"
validate_certs: "{{ keycloak_quarkus_validate_certs | default(omit) }}"
register: keycloak_quarkus_status register: keycloak_quarkus_status
until: keycloak_quarkus_status.status == 200 until: keycloak_quarkus_status.status == 200
retries: 25 retries: 25

View File

@@ -4,7 +4,7 @@
url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/realms/master/protocol/openid-connect/token" url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/realms/master/protocol/openid-connect/token"
method: POST method: POST
body: "client_id={{ keycloak_realm_auth_client }}&username={{ keycloak_realm_admin_user }}&password={{ keycloak_realm_admin_password }}&grant_type=password" body: "client_id={{ keycloak_realm_auth_client }}&username={{ keycloak_realm_admin_user }}&password={{ keycloak_realm_admin_password }}&grant_type=password"
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
no_log: "{{ keycloak_realm_no_log | default('True') }}" no_log: "{{ keycloak_realm_no_log | default('True') }}"
register: keycloak_realm_auth_response register: keycloak_realm_auth_response
until: keycloak_realm_auth_response.status == 200 until: keycloak_realm_auth_response.status == 200
@@ -15,7 +15,7 @@
ansible.builtin.uri: ansible.builtin.uri:
url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms/{{ keycloak_realm_realm }}" url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms/{{ keycloak_realm_realm }}"
method: GET method: GET
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
status_code: status_code:
- 200 - 200
- 404 - 404
@@ -29,7 +29,7 @@
url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms" url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms"
method: POST method: POST
body: "{{ lookup('template', 'realm.json.j2') }}" body: "{{ lookup('template', 'realm.json.j2') }}"
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
body_format: json body_format: json
headers: headers:
Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}" Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}"
@@ -42,6 +42,7 @@
auth_realm: "{{ keycloak_realm_auth_realm }}" auth_realm: "{{ keycloak_realm_auth_realm }}"
auth_username: "{{ keycloak_realm_admin_user }}" auth_username: "{{ keycloak_realm_admin_user }}"
auth_password: "{{ keycloak_realm_admin_password }}" auth_password: "{{ keycloak_realm_admin_password }}"
validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
realm: "{{ item.realm | default(keycloak_realm_realm) }}" realm: "{{ item.realm | default(keycloak_realm_realm) }}"
name: "{{ item.name }}" name: "{{ item.name }}"
state: present state: present
@@ -72,6 +73,7 @@
auth_realm: "{{ keycloak_realm_auth_realm }}" auth_realm: "{{ keycloak_realm_auth_realm }}"
auth_username: "{{ keycloak_realm_admin_user }}" auth_username: "{{ keycloak_realm_admin_user }}"
auth_password: "{{ keycloak_realm_admin_password }}" auth_password: "{{ keycloak_realm_admin_password }}"
validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
realm: "{{ item.realm | default(keycloak_realm_realm) }}" realm: "{{ item.realm | default(keycloak_realm_realm) }}"
default_roles: "{{ item.roles | default(omit) }}" default_roles: "{{ item.roles | default(omit) }}"
client_id: "{{ item.client_id | default(omit) }}" client_id: "{{ item.client_id | default(omit) }}"

View File

@@ -8,6 +8,7 @@
auth_realm: "{{ keycloak_realm_auth_realm }}" auth_realm: "{{ keycloak_realm_auth_realm }}"
auth_username: "{{ keycloak_realm_admin_user }}" auth_username: "{{ keycloak_realm_admin_user }}"
auth_password: "{{ keycloak_realm_admin_password }}" auth_password: "{{ keycloak_realm_admin_password }}"
validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
state: present state: present
loop: "{{ client.roles | flatten }}" loop: "{{ client.roles | flatten }}"
no_log: "{{ keycloak_realm_no_log | default('True') }}" no_log: "{{ keycloak_realm_no_log | default('True') }}"

View File

@@ -5,7 +5,7 @@
method: PUT method: PUT
body: body:
accessTokenLifespan: 300 accessTokenLifespan: 300
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
body_format: json body_format: json
status_code: status_code:
- 200 - 200

View File

@@ -2,7 +2,7 @@
- name: "Check if User Already Exists" - name: "Check if User Already Exists"
ansible.builtin.uri: ansible.builtin.uri:
url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms/{{ keycloak_realm_realm }}/users?username={{ user.username }}" url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms/{{ keycloak_realm_realm }}/users?username={{ user.username }}"
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
headers: headers:
Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}" Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}"
register: keycloak_realm_user_search_result register: keycloak_realm_user_search_result
@@ -18,7 +18,7 @@
email: "{{ user.email | default(omit) }}" email: "{{ user.email | default(omit) }}"
firstName: "{{ user.firstName | default(omit) }}" firstName: "{{ user.firstName | default(omit) }}"
lastName: "{{ user.lastName | default(omit) }}" lastName: "{{ user.lastName | default(omit) }}"
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
body_format: json body_format: json
headers: headers:
Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}" Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}"
@@ -28,7 +28,7 @@
- name: "Get User" - name: "Get User"
ansible.builtin.uri: ansible.builtin.uri:
url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms/{{ keycloak_realm_realm }}/users?username={{ user.username }}" url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms/{{ keycloak_realm_realm }}/users?username={{ user.username }}"
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
headers: headers:
Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}" Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}"
register: keycloak_realm_user register: keycloak_realm_user
@@ -41,7 +41,7 @@
type: password type: password
temporary: false temporary: false
value: "{{ user.password }}" value: "{{ user.password }}"
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
body_format: json body_format: json
status_code: status_code:
- 200 - 200

View File

@@ -3,7 +3,7 @@
ansible.builtin.uri: ansible.builtin.uri:
url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms/{{ client_role.realm | default(keycloak_realm_realm) }}" url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms/{{ client_role.realm | default(keycloak_realm_realm) }}"
method: GET method: GET
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
status_code: status_code:
- 200 - 200
headers: headers:
@@ -17,7 +17,7 @@
default(keycloak_realm_realm) }}/users/{{ (keycloak_realm_user.json | first).id }}/role-mappings/clients/{{ (keycloak_realm_create_client_result.results | \ default(keycloak_realm_realm) }}/users/{{ (keycloak_realm_user.json | first).id }}/role-mappings/clients/{{ (keycloak_realm_create_client_result.results | \
selectattr('end_state.clientId', 'equalto', client_role.client) | list | first).end_state.id }}/available" selectattr('end_state.clientId', 'equalto', client_role.client) | list | first).end_state.id }}/available"
method: GET method: GET
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
status_code: status_code:
- 200 - 200
headers: headers:
@@ -37,7 +37,7 @@
containerId: "{{ item.containerId }}" containerId: "{{ item.containerId }}"
name: "{{ item.name }}" name: "{{ item.name }}"
composite: "{{ item.composite }}" composite: "{{ item.composite }}"
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
body_format: json body_format: json
headers: headers:
Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}" Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}"

View File

@@ -2,8 +2,8 @@
- name: "Get User {{ user.username }}" - name: "Get User {{ user.username }}"
ansible.builtin.uri: ansible.builtin.uri:
url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms/{{ keycloak_realm_realm }}/users?username={{ user.username }}" url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/admin/realms/{{ keycloak_realm_realm }}/users?username={{ user.username }}"
validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
headers: headers:
validate_certs: false
Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}" Authorization: "Bearer {{ keycloak_realm_auth_response.json.access_token }}"
register: keycloak_realm_user register: keycloak_realm_user
@@ -12,7 +12,7 @@
url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/realms/master/protocol/openid-connect/token" url: "{{ keycloak_realm_url }}{{ keycloak_realm_context }}/realms/master/protocol/openid-connect/token"
method: POST method: POST
body: "client_id={{ keycloak_realm_auth_client }}&username={{ keycloak_realm_admin_user }}&password={{ keycloak_realm_admin_password }}&grant_type=password" body: "client_id={{ keycloak_realm_auth_client }}&username={{ keycloak_realm_admin_user }}&password={{ keycloak_realm_admin_password }}&grant_type=password"
validate_certs: false validate_certs: "{{ keycloak_realm_validate_certs | default(omit) }}"
register: keycloak_realm_auth_response register: keycloak_realm_auth_response
no_log: "{{ keycloak_realm_no_log | default('True') }}" no_log: "{{ keycloak_realm_no_log | default('True') }}"
until: keycloak_realm_auth_response.status == 200 until: keycloak_realm_auth_response.status == 200