--- - name: Users | Install sudo package package: name: sudo state: present - name: Users | Deploy /etc/sudoers template: src: sudoers.j2 dest: /etc/sudoers mode: 0440 owner: root group: root - name: Users | Create groups group: name: "{{ item.name }}" state: present with_items: "{{ managed_groups }}" - name: Users | Create users user: name: "{{ item.name }}" state: "{{ item.state | default(omit) }}" home: "{{ item.home | default(omit) }}" move_home: yes shell: "{{ item.shell | default(omit) }}" password: "{{ item.password | default(omit) }}" groups: "{{ item.groups | default(omit) }}" append: no system: "{{ item.system | default(omit) }}" with_items: "{{ managed_users }}" - name: Users | Deploy ssh public keys authorized_key: exclusive: yes user: "{{ item.name }}" key: "{{ lookup(item.lookup, item.keys_source) }}" with_items: "{{ managed_users }}" when: - item.lookup is defined - item.keys_source is defined