--- - name: primary group group: name: "{{ item }}" gid: "{{ users[item].gid }}" with_items: "{{ users.keys() }}" when: users[item].gid is defined - name: account user: name: "{{ item }}" group: "{{ item }}" groups: "{{ users[item].groups | default([]) | join(',') }}" uid: "{{ users[item].uid }}" home: "{{ users[item].home | default('/home/'+item) }}" shell: "{{ users[item].shell | default('/usr/bin/fish') }}" with_items: "{{ users.keys() }}" notify: restart systemd-logind.service - name: password user: name: "{{ item }}" password: "{{ users[item].password }}" with_items: "{{ users.keys() }}" when: users[item].password is defined