mirror of
https://github.com/FAUSheppy/no-secrets-athq-ansible
synced 2025-12-06 07:51:35 +01:00
78 lines
2.0 KiB
YAML
78 lines
2.0 KiB
YAML
- name: cerbot letsencrypt standalone
|
|
include: letsencrypt.yaml
|
|
|
|
- name: Create data-dir
|
|
file:
|
|
name: /data/
|
|
state: directory
|
|
|
|
- name: Create keycloak psql mount
|
|
file:
|
|
name: /data/keycloak-postgres/
|
|
state: directory
|
|
|
|
- name: Create compose directory keycloak
|
|
file:
|
|
name: "/opt/keycloak/"
|
|
state: directory
|
|
|
|
- name: Copy compose templates keycloak
|
|
template:
|
|
src: "keycloak.yaml"
|
|
dest: "/opt/keycloak/"
|
|
|
|
- name: Copy compose environment files keycloak
|
|
template:
|
|
src: "{{ item }}"
|
|
dest: "/opt/keycloak/"
|
|
with_items:
|
|
- postgres_password
|
|
|
|
- name: Deploy compose templates
|
|
community.docker.docker_compose:
|
|
project_src: "/opt/keycloak/"
|
|
pull: true
|
|
files:
|
|
- "keycloak.yaml"
|
|
|
|
- name: Check/Wait for Keycloak to be up
|
|
uri:
|
|
url: https://keycloak.atlantishq.de/health
|
|
method: GET
|
|
return_content: yes
|
|
status_code: 200
|
|
body_format: json
|
|
register: result
|
|
until: result.status and result.json.status == "UP"
|
|
retries: 10
|
|
delay: 20
|
|
|
|
- name: Create Keycloak Clients
|
|
local_action:
|
|
module: keycloak_client
|
|
auth_client_id: admin-cli
|
|
auth_keycloak_url: https://keycloak.atlantishq.de/
|
|
auth_realm: master
|
|
auth_username: admin
|
|
auth_password: "{{ keycloak_admin_password }}"
|
|
state: present
|
|
realm: master
|
|
client_id: '{{ keycloak_clients[item]["client_id"] }}'
|
|
id: '{{ keycloak_clients[item]["keycloak_id"] }}'
|
|
name: '{{ keycloak_clients[item]["client_id"] }}'
|
|
description: '{{ keycloak_clients[item]["description"] }}'
|
|
enabled: True
|
|
client_authenticator_type: client-secret
|
|
secret: '{{ keycloak_clients[item]["client_secret"] }}'
|
|
redirect_uris: '{{ keycloak_clients[item]["redirect_uris"] }}'
|
|
web_origins: '{{ keycloak_clients[item]["redirect_uris"] }}'
|
|
frontchannel_logout: False
|
|
protocol: openid-connect
|
|
with_items: "{{ keycloak_clients.keys() | list }}"
|
|
|
|
- name: Keycloak User federation (ldap-provider)
|
|
include: keycloak-ldap-provider.yaml
|
|
|
|
- name: Include LDAP setup
|
|
include: ldap.yaml
|