- set_fact: defaultuser: genssh: false group: ~ groups: [] home: "{{ ('/var/lib/'+item.key) if (item.value.system|d(True)) else ('/home/'+item.key) }}" system: true state: present uid: "{{ omit }}" password: "*" shell: "/usr/sbin/nologin" - set_fact: user: "{{ defaultuser|combine(item.value|d({}), {'name': item.key} ) }}" - name: create users user: name: "{{ user.name }}" generate_ssh_key: "{{ user.genssh }}" ssh_key_type: ed25519 group: "{{ user.group }}" groups: "{{ user.groups }}" home: "{{ (user.home) }}" system: "{{ user.system }}" state: "{{ user.state }}" uid: "{{ user.uid|d(omit) }}" password: "{{ user.password }}" shell: "{{ user.shell }}"