--- - name: "Test if '{{ user.name }}' exists" command: 'getent passwd {{ user.name }}' register: loginisbusy failed_when: False changed_when: False check_mode: no - name: "Test if uid exists for '{{ user.name }}'" command: 'getent passwd {{ user.uid }}' register: uidisbusy failed_when: False changed_when: False check_mode: no - name: "Add Unix account with classical uid for '{{ user.name }}'" user: state: present uid: '{{ user.uid }}' name: '{{ user.name }}' comment: '{{ user.fullname }}' shell: /bin/bash password: '{{ user.password_hash }}' update_password: on_create when: loginisbusy.rc != 0 and uidisbusy.rc != 0 - name: "Add Unix account with random uid for '{{ user.name }}'" user: state: present name: '{{ user.name }}' comment: '{{ user.fullname }}' shell: /bin/bash password: '{{ user.password_hash }}' update_password: on_create when: loginisbusy.rc != 0 and uidisbusy.rc == 0 - name: "Fix perms on homedirectory for '{{ user.name }}'" file: name: '/home/{{ user.name }}' mode: "0700" state: directory