# platform = multi_platform_all
# reboot = false
# strategy = configure
# complexity = low
# disruption = low
- name: Check that the gdm group is defined
  ansible.builtin.getent:
    database: group
    key: gdm
  ignore_errors: yes
  when: file_groupownerships_var_log_gdm3_newgroup is undefined

- name: Set the file_groupownerships_var_log_gdm3_newgroup variable if gdm found
  ansible.builtin.set_fact:
    file_groupownerships_var_log_gdm3_newgroup: "gdm"
  when: ansible_facts.getent_group["gdm"] is defined
- name: Check that the gdm3 group is defined
  ansible.builtin.getent:
    database: group
    key: gdm3
  ignore_errors: yes
  when: file_groupownerships_var_log_gdm3_newgroup is undefined

- name: Set the file_groupownerships_var_log_gdm3_newgroup variable if gdm3 found
  ansible.builtin.set_fact:
    file_groupownerships_var_log_gdm3_newgroup: "gdm3"
  when: ansible_facts.getent_group["gdm3"] is defined
- name: Check that the root group is defined
  ansible.builtin.getent:
    database: group
    key: root
  ignore_errors: yes
  when: file_groupownerships_var_log_gdm3_newgroup is undefined

- name: Set the file_groupownerships_var_log_gdm3_newgroup variable if root found
  ansible.builtin.set_fact:
    file_groupownerships_var_log_gdm3_newgroup: "root"
  when: ansible_facts.getent_group["root"] is defined

- name: Find /var/log/gdm3/ file(s) matching .* recursively
  ansible.builtin.command: 'find -P /var/log/gdm3/  -type f  ! -group gdm ! -group gdm3 ! -group root -regextype posix-extended -regex ".*"'
  register: files_found
  changed_when: False
  failed_when: False
  check_mode: no

- name: Ensure group owner on /var/log/gdm3/ file(s) matching .*
  ansible.builtin.file:
    path: "{{ item }}"
    follow: false
    group: "{{ file_groupownerships_var_log_gdm3_newgroup }}"
    state: file
  with_items:
    - "{{ files_found.stdout_lines }}"



