| 12345678910111213141516171819202122232425262728293031323334353637 |
- ---
- - name: "Finds a single user imputted into a prompt when playbook is run"
- hosts: all
- gather_facts: yes
- vars_prompt:
- - name: username
- prompt: "User name to find"
- private: false
- tasks:
- - getent:
- database: passwd
- split: ':'
- register: user_info_list
- - name: "Show user names"
- debug:
- msg: "{{ getent_passwd | dict2items | map(attribute='key') | list }}"
- - name: "Set user_present to TRUE if username is present in list"
- set_fact:
- user_present: true
- when: username in getent_passwd | dict2items | map(attribute='key') | list
- - name: "Return FALSE if username is present in list"
- set_fact:
- user_present: false
- when: username not in getent_passwd | dict2items | map(attribute='key') | list
- - name: "Debug: output value of user_present"
- debug:
- msg: "user_present is {{ user_present }}"
- - name: "Debug: output info from username"
- debug:
- msg: "{{ getent_passwd | dict2items | selectattr('key', 'equalto', username) | list }}"
- when: user_present is true
|