2021-02-01 08:08:26 +00:00
|
|
|
---
|
|
|
|
# This playbook is meant to be used with callable variables, like adhoc or AWX.
|
|
|
|
# What: Creates groups in the idm infrastructure based on the variables provided
|
|
|
|
# You MUST provide an ipa_admin user to run this.
|
|
|
|
# If group is going to be a fas group (exposed in noggin), ensure ipa_fas is
|
|
|
|
# set to true.
|
|
|
|
|
2023-04-19 07:59:51 +00:00
|
|
|
- name: Create a group
|
2023-08-23 06:55:38 +00:00
|
|
|
hosts: "{{ host|default('ipaserver') }}"
|
2021-02-01 08:08:26 +00:00
|
|
|
become: false
|
|
|
|
gather_facts: false
|
2022-02-12 21:43:09 +00:00
|
|
|
vars_files:
|
2023-08-23 06:55:38 +00:00
|
|
|
- vars/vaults/userman.yml
|
2024-01-23 20:53:02 +00:00
|
|
|
collections:
|
|
|
|
- freeipa.ansible_freeipa
|
2021-02-01 08:08:26 +00:00
|
|
|
|
|
|
|
tasks:
|
|
|
|
- name: "Checking for user variables"
|
2022-03-28 01:54:24 +00:00
|
|
|
ansible.builtin.assert:
|
2021-02-01 08:08:26 +00:00
|
|
|
that:
|
|
|
|
- ipa_admin | mandatory
|
|
|
|
- ipaadmin_password | mandatory
|
|
|
|
- ipa_group | mandatory
|
|
|
|
- ipa_description | mandatory
|
|
|
|
- ipa_nonposix | mandatory
|
|
|
|
success_msg: "Required variables provided"
|
|
|
|
fail_msg: "We are missing group information or ipa admin password"
|
|
|
|
|
|
|
|
- name: "Creating New Group"
|
|
|
|
freeipa.ansible_freeipa.ipagroup:
|
|
|
|
ipaadmin_principal: "{{ ipa_admin }}"
|
|
|
|
ipaadmin_password: "{{ ipaadmin_password }}"
|
|
|
|
name: "{{ ipa_group }}"
|
|
|
|
description: "{{ ipa_description }}"
|
|
|
|
nonposix: "{{ ipa_nonposix }}"
|
|
|
|
membermanager_user: "{{ ipa_group_manager_user | default(omit) }}"
|
|
|
|
membermanager_group: "{{ ipa_group_manager_group | default(omit) }}"
|
|
|
|
tags:
|
|
|
|
- groups
|
|
|
|
|
|
|
|
- name: "Prepare FAS if required"
|
2023-04-18 05:08:42 +00:00
|
|
|
ansible.builtin.shell: "set -o pipefail && echo \"{{ ipaadmin_password }}\" | kinit {{ ipa_admin }}"
|
2021-02-01 08:08:26 +00:00
|
|
|
check_mode: false
|
|
|
|
changed_when: "1 != 1"
|
|
|
|
when: ipa_fas
|
|
|
|
|
|
|
|
- name: "Apply FAS"
|
2023-04-18 05:08:42 +00:00
|
|
|
ansible.builtin.command: "ipa group-mod --fasgroup {{ ipa_group }}"
|
2021-02-01 08:08:26 +00:00
|
|
|
check_mode: false
|
|
|
|
changed_when: "1 != 1"
|
|
|
|
when: ipa_fas
|
2022-02-12 21:43:09 +00:00
|
|
|
...
|