mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
115 lines
3.2 KiB
YAML
115 lines
3.2 KiB
YAML
|
# Copyright (c) 2022, Dušan Marković (@bratwurzt)
|
||
|
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||
|
|
||
|
- name: Create realm
|
||
|
community.general.keycloak_realm:
|
||
|
auth_keycloak_url: "{{ url }}"
|
||
|
auth_realm: "{{ admin_realm }}"
|
||
|
auth_username: "{{ admin_user }}"
|
||
|
auth_password: "{{ admin_password }}"
|
||
|
id: "{{ realm }}"
|
||
|
realm: "{{ realm }}"
|
||
|
state: present
|
||
|
|
||
|
- name: Create new realm role
|
||
|
community.general.keycloak_role:
|
||
|
auth_keycloak_url: "{{ url }}"
|
||
|
auth_realm: "{{ admin_realm }}"
|
||
|
auth_username: "{{ admin_user }}"
|
||
|
auth_password: "{{ admin_password }}"
|
||
|
realm: "{{ realm }}"
|
||
|
name: "{{ role }}"
|
||
|
description: "{{ description_1 }}"
|
||
|
state: present
|
||
|
|
||
|
- name: Create client
|
||
|
community.general.keycloak_client:
|
||
|
auth_keycloak_url: "{{ url }}"
|
||
|
auth_realm: "{{ admin_realm }}"
|
||
|
auth_username: "{{ admin_user }}"
|
||
|
auth_password: "{{ admin_password }}"
|
||
|
realm: "{{ realm }}"
|
||
|
client_id: "{{ client_id }}"
|
||
|
service_accounts_enabled: true
|
||
|
state: present
|
||
|
register: client
|
||
|
|
||
|
|
||
|
- name: Create new client role
|
||
|
community.general.keycloak_role:
|
||
|
auth_keycloak_url: "{{ url }}"
|
||
|
auth_realm: "{{ admin_realm }}"
|
||
|
auth_username: "{{ admin_user }}"
|
||
|
auth_password: "{{ admin_password }}"
|
||
|
realm: "{{ realm }}"
|
||
|
client_id: "{{ client_id }}"
|
||
|
name: "{{ keycloak_client_role }}"
|
||
|
description: "{{ description_1 }}"
|
||
|
state: present
|
||
|
|
||
|
- name: Create new groups
|
||
|
community.general.keycloak_group:
|
||
|
auth_keycloak_url: "{{ url }}"
|
||
|
auth_realm: "{{ admin_realm }}"
|
||
|
auth_username: "{{ admin_user }}"
|
||
|
auth_password: "{{ admin_password }}"
|
||
|
realm: "{{ realm }}"
|
||
|
name: "{{ item.name }}"
|
||
|
state: present
|
||
|
with_items: "{{ keycloak_user_groups }}"
|
||
|
|
||
|
- name: Create user
|
||
|
community.general.keycloak_user:
|
||
|
auth_keycloak_url: "{{ url }}"
|
||
|
auth_username: "{{ admin_user }}"
|
||
|
auth_password: "{{ admin_password }}"
|
||
|
auth_realm: "{{ admin_realm }}"
|
||
|
username: "{{ keycloak_username }}"
|
||
|
realm: "{{ realm }}"
|
||
|
first_name: Ceciestes
|
||
|
last_name: Untestes
|
||
|
email: ceciestuntestes@test.com
|
||
|
groups: "{{ keycloak_user_groups }}"
|
||
|
attributes: "{{ keycloak_user_attributes }}"
|
||
|
state: present
|
||
|
register: create_result
|
||
|
|
||
|
- name: debug
|
||
|
debug:
|
||
|
var: create_result
|
||
|
|
||
|
- name: Assert user is created
|
||
|
assert:
|
||
|
that:
|
||
|
- create_result.changed
|
||
|
- create_result.end_state.username == 'test'
|
||
|
- create_result.end_state.attributes | length == 3
|
||
|
- create_result.end_state.groups | length == 2
|
||
|
|
||
|
- name: Delete User
|
||
|
community.general.keycloak_user:
|
||
|
auth_keycloak_url: "{{ url }}"
|
||
|
auth_username: "{{ admin_user }}"
|
||
|
auth_password: "{{ admin_password }}"
|
||
|
auth_realm: "{{ admin_realm }}"
|
||
|
username: "{{ keycloak_username }}"
|
||
|
realm: "{{ realm }}"
|
||
|
first_name: Ceciestes
|
||
|
last_name: Untestes
|
||
|
email: ceciestuntestes@test.com
|
||
|
groups: "{{ keycloak_user_groups }}"
|
||
|
attributes: "{{ keycloak_user_attributes }}"
|
||
|
state: absent
|
||
|
register: delete_result
|
||
|
|
||
|
- name: debug
|
||
|
debug:
|
||
|
var: delete_result
|
||
|
|
||
|
- name: Assert user is deleted
|
||
|
assert:
|
||
|
that:
|
||
|
- delete_result.changed
|
||
|
- delete_result.end_state | length == 0
|