#- name: Ensure LDAP groups exist # community.general.ldap_entry: # dn: "cn={{ item.name }},ou=groups,{{ ldap_basedn }}" # state: present # objectClass: # - posixGroup # attributes: # cn: "{{ item.name }}" # gidNumber: "{{ item.gid }}" # loop: "{{ ldap_groups }}" # args: # server_uri: "{{ ldap_uri }}" # bind_dn: "{{ ldap_admin_dn }}" # bind_pw: "{{ ldap_admin_pw }}" # start_tls: yes # #- name: Ensure group memberships are correct # community.general.ldap_attrs: # dn: "cn={{ item.name }},ou=Groups,{{ ldap_basedn }}" # attributes: # memberUid: "{{ item.members }}" # state: exact # loop: "{{ ldap_groups }}" # when: item.members is defined and item.members | length > 0 # args: # server_uri: "{{ ldap_uri }}" # bind_dn: "{{ ldap_admin_dn }}" # bind_pw: "{{ ldap_admin_pw }}" # start_tls: yes # # - name: Ensure LDAP groups exist community.general.ldap_entry: dn: "cn={{ item.name }},ou=Groups,{{ ldap_basedn }}" state: present objectClass: - top - posixGroup attributes: cn: "{{ item.name }}" gidNumber: "{{ item.gid | int }}" loop: "{{ ldap_groups }}" args: server_uri: "{{ ldap_uri }}" bind_dn: "{{ ldap_admin_dn }}" bind_pw: "{{ ldap_admin_pw }}" start_tls: yes